正则表达式

1 regexp_replace

select data, regexp_replace(data,'[0-9]','') dname,

regexp_replace(data,'[^0-9]','') deptno from dept2;

[0-9]代表[0123456789],还可以表示为[[:digit:]]

[^0-9]中多了一个^,这个表示否定的意思,代表[0-9]的外集,也就是除[0123456789]外的所有字符.

这里要注意"^"的位置:在方括号内字符前面表示所有否定;不在方括号内(如直接写成'^hell'),则表示字符串的开始位置.

2 regexp_like

select data from temp where regexp_like(data,'^[0-9a-z-A-Z]+$')


regexp_like(data,'^[0-9a-z-A-Z]+$'):表示包含数字或者小写字母或者大写字母的字符串,这里的"$"表示字符串的结束,

+表示匹配前面的子表达式一次或者多次;

另外还有个'*':表示匹配前面的子表达式零次或者多次

注:regexp_like(data,'A')同like'%A%'

regexp_like(data,'^A')同like'A%'

regexp_like(data,'A$')同like'%A'

regexp_like(data,'^A$')同like'A'


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值