我有以下模式:/*.a*.b*.c/
,它将按顺序匹配包含a
b
和c
的任何输入。
所以以下字符串将匹配我的模式:
555 a fgb ccc
a b c
atbtc
我想要实现的只是整个单词而不是整个句子中的匹配。所以以下字符串将匹配:
i want abc
但以下内容不匹配:a b c
我通过执行str.split(“”)来解决它并分别在每个单词上运行我的模式,但我确信有一种方法可以通过单个正则表达式匹配来实现它。
感谢。
答案 0 :(得分:1)
答案 1 :(得分:0)
/[ ]+(abc)[ ]+/g
应解决您的案件
答案 2 :(得分:0)
试试这个正则表达式/([^ ]*a[^ ]*)( )*([^ ]*b[^ ]*)( )*([^ ]*c[^ ]*)( )*/
然后,如果你想捕获包含a,b和c的单词。您需要使用match
。
使用此正则表达式,根据匹配的括号,单词将位于第1,3和5位。
要获得更多详细信息并构建正则表达式,您可以使用https://regex101.com/