正则表达式:匹配所有包含某个词的词
Regex: Match all the words that contains some word
我想匹配所有包含单词 "oana" 的单词。我把"OANA"放在了一些单词的开头,中间和结尾的大写字母
blah OANAmama blah aOANAtata aOANAt msmsmsOANAasfasfa mOANAmsmf OANAtata OANA3 oanTy
无论如何,我做了一个正则表达式,但它不是很好,因为它没有 select 所有包含 "oana"
的单词
\b\w+(oana)\w+\b
谁能给我另一个解决方案?
您需要使用不区分大小写的标志并将 +
替换为 *
:
/\b\w*oana\w*\b/i
参见 regex demo(可以使用也可以不使用全局修饰符,具体取决于正则表达式引擎)。在某些正则表达式引擎中,不区分大小写的修饰符可以作为内联选项传递 - (?i)\b\w*oana\w*\b
.
这里,
\b
- 单词边界
\w*
- 0+ 个单词字符
oana
- 单词中所需的字符串
\w*
- 0+ 个单词字符
\b
- 单词边界
我想匹配所有包含单词 "oana" 的单词。我把"OANA"放在了一些单词的开头,中间和结尾的大写字母
blah OANAmama blah aOANAtata aOANAt msmsmsOANAasfasfa mOANAmsmf OANAtata OANA3 oanTy
无论如何,我做了一个正则表达式,但它不是很好,因为它没有 select 所有包含 "oana"
的单词\b\w+(oana)\w+\b
谁能给我另一个解决方案?
您需要使用不区分大小写的标志并将 +
替换为 *
:
/\b\w*oana\w*\b/i
参见 regex demo(可以使用也可以不使用全局修饰符,具体取决于正则表达式引擎)。在某些正则表达式引擎中,不区分大小写的修饰符可以作为内联选项传递 - (?i)\b\w*oana\w*\b
.
这里,
\b
- 单词边界\w*
- 0+ 个单词字符oana
- 单词中所需的字符串\w*
- 0+ 个单词字符\b
- 单词边界