浅谈oracle中的正则表达式REGEXP_like使用

最近才知道,oracle和my sql的正则用法是不一样的,在scott用户做的测试,请看图

select * from DEPT;

SELECT * FROM DEPT A WHERE REGEXP_LIKE(A.DNAME,'^ACC');

––查看字段中以ACC开头的数据

 

SELECT * FROM DEPT A WHERE REGEXP_LIKE(A.DNAME,'CH$');

––查看字段中以CH结尾的数据

SELECT * FROM DEPT A WHERE REGEXP_LIKE(A.DEPTNO,'[1]');

––查看字段中包含1的数据

 

 ––以上仅为我个人测试心得,欢迎各位大神指导,感激不尽 其他用法参照下文:

匹配过程中可能会涉及到的元字符(Meta Character)对应的sql代码:

^ 使表达式定位至一行的开头 

$ 使表达式定位至一行的末尾

* 匹配0次或更多次 

? 匹配0次或1次

+ 匹配1次或更多次 

{m} 正好匹配m次

{m,} 至少匹配m次

{m,n} 至少匹配m次但不超过n次

[:alpha:] 字母字符,匹配字符A-Z、a-z

[:lower:] 小写字母字符,匹配字符a-z

[:upper:] 大写字母字符,匹配字符A-Z

[:digit:] 数字,匹配数字0-9

[:alphanum:] 字母数字字符,匹配字符A-Z、a-z、0-9

[:space:] 空白字符(禁止打印),如回车、换行符、竖直制表符和换页符[:punct:] 标点字符

[:cntrl:] 控制字符(禁止打印)

[:print:] 可打印字符|分隔替换选项,通常与分组符()一期使用

() 将子表达式分组为一个替换单元,量词单元或后向引用单元

[char] 字符列表 

. 匹配除null之外的任意单个字符 

/ 要匹配的字符是一个特殊字符、常量或者后者引用

x|y 匹配 x 或 y

[abc] 匹配abc中的任何单个字符

[a-z] 匹配 a 到 z 范围内的任意单个字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旺卡_大流量卡

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值