考虑以下指南 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的插件应用。我几乎逐字地粘贴了代码来过滤包含单词的注释。
答案 0 :(得分:3)
不需要*
,?
会为您完成。
/[0-9a-zA-Z]+foo(?:bar)?\b/i
如果您尝试在字符串中查找该模式的所有单词,则应添加g
修饰符(如果它可用于您的正则表达式引擎):
/[0-9a-zA-Z]+foo(?:bar)?\b/ig