关于c#:用Regex替换字符串中的完整单词

Replacing only full words in a string with Regex

我只需要用regex替换句子中第一个出现的单词。

部分问题解决了,但我只需要替换完整的单词,并排除部分匹配。

例如,在"敏捷的棕色狐狸跳过懒惰的狗"这句话中,我想用"猫"来代替"狐狸"。

我能达到的结果是:"快速的棕色猫狐狸跳过了懒惰的狗"。而不是"狐狸猫"。

我正在使用regex.replace方法,如下所示:

1
2
3
var reg = new Regex(currentKeyword, RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace | RegexOptions.Multiline);

reg.Replace(input, replace, 1, 0);


1
var reg = new Regex(@"\b" + currentKeyword + @"\b", ...);

\b表示单词边界。


使用正确的regex,如@"\bcat\b"