Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 正则表达式匹配“;或;术语集;及;特定术语_Regex - Fatal编程技术网

Regex 正则表达式匹配“;或;术语集;及;特定术语

Regex 正则表达式匹配“;或;术语集;及;特定术语,regex,Regex,我有一套“或”的短语,我想匹配,以及一个单一的术语,应该包括在内 或短语 包含以下任一词的短语: 联系|演示|网络研讨会|内容 和w/这个确切的词: 帐目 因此,它将匹配: 联系人帐户 演示帐户 帐户网络研讨会 内容帐户等 但不是 演示 帐目 演示联系人 帐户 演示 这似乎起了部分作用 \b(contact|demo|webinar|content).*?(\b(?!\1)(account)\b) 但它不匹配(也不应该)的是: 帐户演示 您可以使用此正则表达式: \b(?=.

我有一套“或”的短语,我想匹配,以及一个单一的术语,应该包括在内

或短语

包含以下任一词的短语:

  • 联系|演示|网络研讨会|内容
和w/这个确切的词:

  • 帐目
因此,它将匹配:

  • 联系人帐户
  • 演示帐户
  • 帐户网络研讨会
  • 内容帐户等
但不是

  • 演示
  • 帐目
  • 演示联系人
  • 帐户
  • 演示
这似乎起了部分作用

\b(contact|demo|webinar|content).*?(\b(?!\1)(account)\b)
但它不匹配(也不应该)的是:

  • 帐户演示

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

\b(?=.*?\b(?:contact|demo|webinar|content)\b)(?=.*?\baccount\b).*

你可以试试下面的正则表达式

\b(contact\b|demo\b|webinar\b|content\b)(?:(?!\1).)*(?: account)\b

工作正常!谢谢