求一条oracle的正则表达式

来源:百度知道 编辑:UC知道 时间:2024/04/29 09:45:06
我有一个字符串类似下面这样的
'LINESTRING ( 125.64344940 0.37195987, 125.64392414 0.37187532, 125.64415436 0.37192475, 125.64430914 0.37210554, 125.64433906 0.37221870)'
前面有个英文单词,后面跟着括号,括号里面有若干数字(数字的个数不确定但是肯定是偶数个的) 每一对数字由一个逗号隔开,逗号里面那一对数字又由空格隔开,我想把括号里面的所有数字提出来内部格式保持不变,用oracle的正则表达式里面的函数regexp_substr保留括号里面数字之间的格式 该怎么写那个表达式呢?

也就是输入字符串
'LINESTRING ( 125.64344940 0.37195987, 125.64392414 0.37187532, 125.64415436 0.37192475, 125.64430914 0.37210554, 125.64433906 0.37221870)'

然后输出
'125.64344940 0.37195987, 125.64392414 0.37187532, 125.64415436 0.37192475, 125.64430914 0.37210554, 125.64433906 0.37221870'
这样的结果
在oracle下做正则表达式,就是用sql语句写

select regexp_replace('LINESTRING ( 125.64344940 0.37195987, 125.64392414 0.37187532, 125.64415436 0.37192475, 125.64430914 0.37210554, 125.64433906 0.37221870)','\(([^\)]+)','$1') regfield from dual

用regexp_replace

你是在linux下正则,还是在oracle下的正则?