C# 在C中使用正则表达式获得单词的精确匹配#

C# 在C中使用正则表达式获得单词的精确匹配#,c#,regex,C#,Regex,我需要使用正则表达式匹配给定文本中的确切单词 代码如下: var matchterm = "VO"; var pattern = "\\b(" + matchterm + ")\\b"; var text = "FOR OVER FIFTY YEARS WATER FUTURE VOA VO>> VO"; var regx = new Regex(pattern,RegexOptions.IgnoreCase); var collection = regx.Matches(text)

我需要使用正则表达式匹配给定文本中的确切单词

代码如下:

var matchterm = "VO";
var pattern = "\\b(" + matchterm + ")\\b";
var text = "FOR OVER FIFTY YEARS WATER FUTURE VOA VO>> VO";
var regx = new Regex(pattern,RegexOptions.IgnoreCase);
var collection = regx.Matches(text);

在这里,我试图从文本中获得准确的“VO”(不是来自VOA或VO>>)。问题在于正确匹配,我也从“VO>>”中获得了我不想要的“VO”。请帮助。

您可以使用正则表达式
(?:


string模式=string.Format(“(?请注意\s将匹配空格,但也匹配其他空格字符:制表符、分页符等。您可以删除周围的类\s他们不添加任何内容是的,我还发现正则表达式的功能非常复杂。它可以很容易地重写为更易于阅读的内容。@AFract如果您有更好的答案,可以随意添加答案使用更好的答案无需更改:
@”(?将为您提供必要的
VO
。但您需要它做什么?感谢您的建议,但这不会有帮助,因为上面的正则表达式代码是工作流的一部分,在进一步的流程中使用匹配位置。
string pattern = String.Format("(?<!\\S){0}(?!\\S)", matchterm);