我遇到了将整个单词与某些特殊字符匹配的问题。
这是我正在尝试的模式:
(\b)(\w*dog\w*)(\b)|(\b)(\w*ion\w*)(\b)
基本上,我正在尝试匹配包含dog
或ion
的所有单词。问题是\w*
与所有特殊字符都不匹配。
这是我尝试过的:https://regex101.com/r/wN6tI9/5
答案 0 :(得分:1)
我可以建议以下正则表达式模式:
\S*(?:dog|ion)\S*
这将匹配包含dog
或ion
作为子字符串的任何较大的单词,此处的“较大的单词”表示任何连续的非空白字符序列。这是一个演示:
var input = "@hellodogworld$"; // contains dog
console.log(/^\S*(?:dog|ion)\S*$/.test(input));
input = "blah"; // does not contain dog or ion
console.log(/^\S*(?:dog|ion)\S*$/.test(input));