一尘不染

正则表达式匹配整个单词

c#

在中C#,我想使用正则表达式来匹配以下任何一个单词:

string keywords = "(shoes|shirt|pants)";

我想在内容字符串中找到整个单词。我以为这样regex可以做到:

if (Regex.Match(content, keywords + "\\s+", 
  RegexOptions.Singleline | RegexOptions.IgnoreCase).Success)
{
    //matched
}

但是对于像这样的单词participants,即使我只想要整个单词,它也会返回true pants

我该如何只匹配那些文字呢?


阅读 2407

收藏
2020-05-19

共1个答案

一尘不染

您应在正则表达式中添加定界符:

\b(shoes|shirt|pants)\b

在代码中:

Regex.Match(content, @"\b(shoes|shirt|pants)\b");
2020-05-19