我需要有关正则表达式(oracle)中排除情况的紧急帮助。
主要的正则表达式是:
1([^4][:;]|[0-9][^:;].*)
我需要修改或增强此正则表达式以排除特定字符串“1013;” 但无法实现。我已经搜索了两天的解决方案,但找不到任何在 oracle 中有效的方法。
最受欢迎的替代解决方案 (?!stringToExclude)Regexp 在 oracle 中不起作用。(我拥有的版本:Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production)
你对这个问题有什么想法吗?我该如何克服这个问题?
我的测试 sql 语句检查新正则表达式的验证是:
select regexp_substr('1013;', '1([^34][:;]|[0-9][^:;].*)') from dual --> returns 1013;
select regexp_substr('10133;', '1([^34][:;]|[0-9][^:;].*)') from dual --> returns 10133;
select regexp_substr('1013;', 'to be regexp') from dual --> should return nothing
select regexp_substr('1013', 'to be regexp') from dual --> should return nothing
select regexp_substr('1013:', 'to be regexp') from dual --> should return nothing
select regexp_substr('10133;', 'to be regexp') from dual --> should return 10133;