oracle中regexp_like的使用

regexp_like就是使用正则表达式校验字符串是否符合规则

例如:判断‘123456as’是否是小数或者整数

 SELECT '123' FROM dual where regexp_like('123456as','^[0-9\.]+$')

有时候判断条件中需要使用两个或者多个like操作的时候,也可以使用regexp_like来操作,例如下面的

SELECT '123' FROM dual where regexp_like('123456as','(12|49)')

就是判断字符串'123456as'中是否存在12或者49,若存在,则返回123,否则返回空

 

同理:使用not like不存在的时候,也可以使用not regexp_like来校验。例如下面

SELECT '123' FROM dual where not regexp_like('123456as','(12|49)')

就是判断字符串'123456as'中是否不存在12或者49,若存在,则返回123,否则返回空

 

参考:https://blog.csdn.net/kenry121212/article/details/79270100

posted @ 2021-01-03 14:42  masha2017  阅读(6496)  评论(0编辑  收藏  举报