输入列具有逗号分隔的整数值,例如
样本输入1)
1,2,200000,2345323,1200000
样本输出1)
1,2,2345323
样本输入2)
546^515,400000,657180,3
样本输出2)
546^515, 657180,3
输出字符串应过滤出所有带有“ 5”尾随零的整数。
答案 0 :(得分:0)
使用regexp_replace()
可以很容易地排除五个零数字。但是似乎我们也需要整理掉后面的逗号。此解决方案还有一个regexp_replace()
,可以在切出的数字位于字符串中时捕获,,
,而当数字是字符串中的第一个或最后一个字符串时,可以使用简单的trim()
:
with cte as (
select '1,2,200000,2345323,1200000' as str from dual union all
select '546^515,400000,657180,3' as str from dual union all
select '546^515,400000,1200000,657180,3' as str from dual union all
select '54000000,400000,1200000,657180,300000000' as str from dual
)
select trim(both ',' from regexp_replace(regexp_replace(str, '([0-9]+)00000', null),',(,+)',',')) as new_str
from cte
/