oracle 正则式 使用

REGEXP_REPLACE
Select REGEXP_REPLACE('aa1bb3cc','[a-zA-Z]', '') FROM dual
删除所有字母

REGEXP_REPLACE 第一个参数是原字符串,第二参数正则式,第三参数为替换值
例:为限行设定车牌最后一位数字
update hi_limitcar set CARNOLASTNUM=(substr(REGEXP_REPLACE(CARNO,'[a-zA-Z]’, ”),length(REGEXP_REPLACE(CARNO,'[a-zA-Z]', ''))));

 

regexp_like 只用于条件式
如:
select name from list where id>100 and regexp_like(name,'A\d+','i'); — 'i' 忽略大小写 可忽略此参数

 

还有 REGEXP_INSTR 和 REGEXP_SUBSTR 两个函数,有空再看