如何搜索一个不以另一个单词结尾的单词?正则表达式

时间:2016-09-16 18:14:10

标签: regex

我需要搜索单词strong,而不是strongman

例如:

   strong fs asfa strong saff strongman sa strong

正则表达式应返回3场比赛。

我尝试了不同的事情:

1

"<(strong)(man){0}>" 

2

"<(strong)(man.*){0}>"

我要做的是搜索这个词,后面没有 man

有什么建议吗?感谢

1 个答案:

答案 0 :(得分:1)

您只需要\b

使用\bstrong\b

参见演示。 https://regex101.com/r/jX1rN4/3

编辑:

用于新条件

\bstrong(?!man\b)

参见演示。 https://regex101.com/r/jX1rN4/4

这可以作为

\b是字边界,因此请检测strong而不是asbdstring

然后在strong之后我们添加一个lookahead,说明不应该man(再次\b,以便可以mann