Java 正则表达式用于匹配某些内容(如果没有其他内容)

因此,对于Java中的正则表达式,我想编写一个正则表达式,当且仅当模式前面没有某些字符时才匹配。例如:

String s = "foobar barbar beachbar crowbar bar ";

如果bar不以foo开头,我想匹配。因此输出为:

barbar

beachbar

crowbar

bar

我知道这可能是一个非常简单的问题。我正在尝试学习正则表达式,但与此同时我现在需要一些工作。

回答:

你想这样使用negative lookbehind

\w*(?<!foo)bar

此处的(?<!x)意思是“仅在此点之前没有“ x”。

有关更多信息,请参见正则表达式-环顾四周。

编辑:添加\w*来捕获之前的字符(例如“海滩”)。

以上是 Java 正则表达式用于匹配某些内容(如果没有其他内容) 的全部内容, 来源链接: utcz.com/qa/398289.html

回到顶部