2014.12.22 几个有用的oracle正则表达式

SELECT REGEXP_REPLACE('LSS12345', '[^0-9]') FROM DUAL

结果:12345

'[^0-9]'中的^表示‘非’上述表达式的含义是“将LSS12345中的非数字替换掉”

SELECT REGEXP_REPLACE('LSS12345', '[^0-9]','*') FROM DUAL

结果:***12345,将非数字替换成*

同样,SELECT REGEXP_REPLACE('LSS12345', '[0-9]','*') FROM DUAL

结果:LSS*****

Decode(sign(length(txt_name)-length(REGEXP_REPLACE(txt_name,'[0-9]'))),1,'P'||lpad(REGEXP_REPLACE(txt_name,'[^0-9]'),4,'0'),txt_name)

posted on 2016-10-15 17:05  mol1995  阅读(196)  评论(0编辑  收藏  举报

导航