我正在尝试使用正则表达式匹配单词,但遗憾的是单词边界字符 (\b) 没有包含足够我喜欢的字符,所以我想添加更多。(在那种精确的情况下,“+”字符)
这是我曾经拥有的(它是 C#,但不是很相关):
string expression = Regex.Escape(word);
Regex regExp = new Regex(@"\b" + expression + @"\b", RegexOptions.IgnoreCase);
这个特殊的正则表达式与“C++”不匹配,我认为这真是太糟糕了。因此,我尝试以这种方式在字符类中使用 \w 字符以及 + 字符:
string expression = Regex.Escape(word);
Regex regExp = new Regex(@"(?![\w\+])" + expression + @"(?![\w\+])", RegexOptions.IgnoreCase);
但是现在,什么都没有匹配……我有什么遗漏吗?