oracle正则表达式
请问在oracle11g的正则表达式中,匹配一个不含<>的字符串,
regexp_like('dfdfdfdf<fdf','[^<>]*')
怎么返回的是TRUE啊?
大虾指导一下,该怎么定义这个正则表达式啊?
[解决办法]
- SQL code
--这样写select * from dual where not regexp_like('dfdfdfdf<fdf','[<>]+');--至于你的为什么为true,因它匹配的是非<>的字符,执行下面的你就看出来了select regexp_substr('dfdfdfdf<fdf','[^<>]*') from dual;
[解决办法]
1楼正确,
补充一点,如果要写成不用not的形式,要这么写
- SQL code
select * from dual where regexp_like('dfdfdfdf<fdf','^[^<>]*$');