如何替换richtextbox.rtf当且仅当整个单词匹配

本文关键字:当且仅当 单词匹 rtf richtextbox 何替换 替换 | 更新日期: 2023-09-27 18:00:28

我原来的替换代码是.

rtTextArea.Rtf = rtTextArea.Rtf.Replace(oldtext, newtext);

但问题是它替换了所有出现的单词,而不是所需的单词你好,我叫塞拉克,在以色列replace()--is with是整个单词chages to"are serak and am in arereal"

我是否可以包含一个条件或其他东西来匹配整个单词?我的工作环境C#。

如何替换richtextbox.rtf当且仅当整个单词匹配

使用正则表达式。在本例中,'b表示单词边界。

var regExp = new System.Text.RegularExpressions.Regex(@"'bis'b");
rtTextArea.Rtf = regExp.Replace(rtTextArea.Rtf, "are");

上一篇文章显示

var regExp=新系统。文本RegularExpressions。Regex(@"''b"+oldtext+@"''b");rtTextArea。Rtf=regExp。替换(rtTextArea.Rtf,newtext);

这与第一个帖子有点不同。注意额外的b和@

这对我很有效。

使用RegEx是正确的方法,但为了简洁起见,您也可以在要替换的单词前加一个空格,以确保它不是另一个单词的一部分。

例如wordToReplace = " " + wordToReplace + " ";