我需要编写一个正则表达式,它将匹配字符串中的所有内容,除非它中包含某个单词.以此字符串为例:
http://12.34.567.890/sqlbuddy
Run Code Online (Sandbox Code Playgroud)
匹配所有内容的表达式是:
^.*$
Run Code Online (Sandbox Code Playgroud)
... 如果它包含单词"sqlbuddy" ,则需要对其进行修改以使其与字符串完全匹配.我认为负面的前瞻会做到这一点,但那对我不起作用.
例如,我试过这个,这不起作用:
^(?!sqlbuddy).*$
Run Code Online (Sandbox Code Playgroud)
我该怎么修改呢?
该示例不起作用,因为它假定sqlbuddy在字符串的开头.您需要将其更改为以下内容,以便sqlbuddy可以出现在字符串中的任何位置:
^(?!.*sqlbuddy.*).*$
Run Code Online (Sandbox Code Playgroud)
但是,如果你真的只想检查你的字符串是否包含给定的单词,那么也许"http://12.34.567.890/sqlbuddy".contains("sqlbuddy")就足够了.