RegEx,匹配具有可选结尾的整个单词

时间:2014-01-09 07:53:55

标签: regex

考虑以下指南 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions

为什么这与以foo或foobar结尾的单词不匹配?

/[0-9a-zA-Z]+foo(?:bar)*\b/i

它应该是4chan.orgs技术板的wordfilter的一部分,由一个名为4chanX的插件应用。我几乎逐字地粘贴了代码来过滤包含单词的注释。

1 个答案:

答案 0 :(得分:3)

不需要*?会为您完成。

/[0-9a-zA-Z]+foo(?:bar)?\b/i

如果您尝试在字符串中查找该模式的所有单词,则应添加g修饰符(如果它可用于您的正则表达式引擎):

/[0-9a-zA-Z]+foo(?:bar)?\b/ig