首页 > 解决方案 > 正则表达式排除以符号“]”开头的单词

问题描述

现在我有正则表达式,它只从内容中捕获单词

/\b(word1|word2|word3)\b/i

它非常简单并且可以工作,但是我有一个不应该触发的案例。当 word 在 wordpress 简码中时

[语音]word1[/语音]

在这种情况下,不需要触发正则表达式。我试过[^\]]\b(word1|word2|word3)\b了,但它占用了额外的空间。检查https://regex101.com/r/KdEvbN/1

我花了大约 2 个小时,现在我讨厌正则表达式。帮我出去。谢谢

标签: phpregex

解决方案


尝试像这样消极地看待背后:

(?<!])\b(word1|word2|word3)\b

推荐阅读