正则表达式 - 如何判断不匹配的东西?

Jak*_*les 6 regex

我如何创建一个不匹配的正则表达式?例如,我想要正则表达式匹配不是字符串"www.petroules.com"的所有内容.

我尝试过,[^www\.petroules\.com]但似乎没有用.

Tim*_*ker 11

^(?!www\.petroules\.com$).*$
Run Code Online (Sandbox Code Playgroud)

将匹配除以外的任何字符串www.petroules.com.这称为负向前瞻.

[^www\.petroules\.com]
Run Code Online (Sandbox Code Playgroud)

表示"匹配除w,p,e,t,r,o,u,l,s或dot之外的一个字符".

  • 正是我需要的,谢谢。当您提交第一个正确答案后,我们将在大约 10 分钟内接受。 (2认同)

Don*_*ner 10

(?!...)
Run Code Online (Sandbox Code Playgroud)

这称为负前瞻。仅当正则表达式 ... 不匹配时才匹配。但是,请注意它不消耗字符。这意味着,如果您在 ) 之后添加任何其他内容,它将立即开始匹配,即使是作为负前瞻一部分的字符。