正则表达式:匹配包含某些单词的所有单词

时间:2017-03-01 15:25:17

标签: regex words

我希望匹配包含单词" oana"的所有单词。我把" OANA"在某些单词中,在单词的开头,中间和结尾处使用大写字母。

blah OANAmama blah aOANAtata aOANAt msmsmsOANAasfasfa mOANAmsmf OANAtata OANA3 oanTy

无论如何,我做了一个正则表达式,但它不是很好,因为它没有选择包含" oana"

的所有单词

\b\w+(oana)\w+\b

任何人都可以给我另一种解决方案吗?

1 个答案:

答案 0 :(得分:3)

您需要使用不区分大小写的标记,并将+替换为*

/\b\w*oana\w*\b/i

请参阅regex demo(可能使用或不使用全局修饰符,具体取决于正则表达式引擎)。不区分大小写的修饰符可以在某些正则表达式引擎中作为内联选项传递 - (?i)\b\w*oana\w*\b

在这里,

  • \b - 字边界
  • \w* - 0+ word chars
  • oana - 单词中所需的字符串
  • \w* - 0+ word chars
  • \b - 字边界