正则表达式 – 匹配字符串不包含一个组,DOES包含另一个组

前端之家收集整理的这篇文章主要介绍了正则表达式 – 匹配字符串不包含一个组,DOES包含另一个组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
例如,匹配不包含“foo”但包含“bar”的字符串的正则表达式.我没有使用两个表达式的奢侈.我需要在一个表达式中完成它.

例:

“this is foo baz bar” – should not match
“this is foo baz” – should
not match
“this is baz bar” – should match

我在Perl,fwiw

解决方法

在开始时使用 negative lookahead断言来检查字符串是否包含任何foo子字符串.

^(?!.*?foo).*bar.*

要么

^(?!.*?\bfoo\b).*\bbar\b.*

DEMO

猜你在找的正则表达式相关文章