"lon":"119.133289","lat":"36.721074"} 请使用sql正则表达式把数字拿出来,输出结果为"36.721074"
时间: 2023-11-10 20:06:15 浏览: 70
可以使用SQL正则表达式函数REGEXP_SUBSTR来实现该功能。具体实现方法如下:
```
SELECT REGEXP_SUBSTR('{"lon":"119.133289","lat":"36.721074"}', '("lat":"[0-9]+\.[0-9]+")', 1, 1, 'i') AS result;
```
该语句中,REGEXP_SUBSTR函数的第一个参数为需要匹配的字符串,第二个参数为匹配的正则表达式,第三个参数为开始匹配的位置,第四个参数为返回的匹配项的位置,第五个参数为匹配时忽略大小写。其中正则表达式`("lat":"[0-9]+\.[0-9]+")`表示匹配以`"lat":"`开头,后面跟着一个小数的字符串,最后以`"`结尾的字符串。执行以上SQL语句,输出结果为`"lat":"36.721074"`,即成功将数字`36.721074`提取出来。
相关问题
"lon":"119.133289","lat":"36.721074"} 请使用sql正则表达式把数字拿出来,输出结果为"119.133289 36.721074"
可以使用SQL正则表达式函数REGEXP_REPLACE来实现该功能。具体实现步骤如下:
```sql
SELECT REGEXP_REPLACE('{"lon":"119.133289","lat":"36.721074"}', '[^0-9\.]+', ' ') AS result;
```
解释:
1. 使用REGEXP_REPLACE函数,将字符串中的非数字和小数点替换为空格。
2. 第一个参数为需要替换的字符串。
3. 第二个参数为正则表达式,表示需要替换的内容。[^0-9\.]+表示除了数字和小数点以外的任意字符都需要被替换。
4. 第三个参数为替换后的内容,这里是一个空格。
5. 最终输出结果为"119.133289 36.721074"。
"lon":"119.133289","lat":"36.721074"} 请使用sql正则表达式把数字拿出来,输出结果为"119.133289"
可以使用MySQL中的正则表达式函数REGEXP_SUBSTR来实现该功能。具体实现方法如下:
SELECT REGEXP_SUBSTR('{"lon":"119.133289","lat":"36.721074"}', '[0-9]+[.][0-9]+') AS result;
该语句中,REGEXP_SUBSTR函数的第一个参数为需要匹配的字符串,第二个参数为正则表达式模式,[0-9]+[.][0-9]+表示匹配一个或多个数字,后跟一个小数点,再后跟一个或多个数字。最终输出结果为"119.133289"。
阅读全文