正则表达式中有 NOT 运算符吗?
就像那个字符串:"(2001) (asdf) (dasd1123_asd 21.01.2011 zqge)(dzqge) name (20019)"
我想删除所有 \([0-9a-zA-z _\.\-:]*\)
但不是一年的那个:(2001 )
.
所以正则表达式应该返回的必须是:(2001) name
。
注意:像 \((?![\d]){4}[0-9a-zA-z _\.\-:]*\)
这样的东西对我不起作用((20019)
不知何故也匹配...)
最佳答案
不完全是,尽管通常您可以在其中一种表单上使用一些解决方法
-
[^abc]
, 是逐个字符而不是a
或b
或c
, - 或负前瞻:
a(?!b)
,即a
后面没有b
- 或否定的后视:
(?<!a)b
,即b
之前没有a
关于正则表达式不是运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7317043/