正则表达式匹配包含某些单词但不包含其他单词的字符串

时间:2019-11-13 07:36:10

标签: regex

我正在尝试编写一个正则表达式,以匹配字符串中任何位置包含“ foo”或“ bar”但不包含“ baz”的单词。

/(foo|bar).*(?!baz)/

我该如何实现?

1 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式:

^(?!.*\bbaz\b).*\b(?:foo|bar)\b

(?!.*\bbaz\b)为否定超前条件,如果在输入中的任何位置找到单词baz,则匹配失败。

RegEx Demo