如何根据其起始索引突出显示整个单词

Dot*_*NET 0 .net c# string richtextbox winforms

我有一个RichTextBox,并希望突出显示一个完整的单词,只给出它的起始索引.

如果已知起始索引和长度,我已经能够突出显示一个单词,但是在这种情况下我不知道该单词的长度.是否有可能从起始索引突出显示空间的第一次出现?

更新:

这是我到目前为止所尝试的:

resultsRichTextBox.Select(novelOffset - 2, searchString.Length);
Run Code Online (Sandbox Code Playgroud)

不幸的是,'searchstring'并不总是所搜索单词的长度,因此我需要一种方法来查找novelOffset - 2到最近空间的字符数量.

dig*_*All 5

你可以这样做:

int length = this.richTextBox1.Text.Skip(startIdx)
                              .TakeWhile(x => char.IsLetterOrDigit(x))
                              .Count();
this.richTextBox1.Select(startIdx, length);
this.richTextBox1.SelectionBackColor = Color.Yellow;
Run Code Online (Sandbox Code Playgroud)

很明显,你可以改变char.IsLetterOrDigit使用x != ' '或任何你喜欢的.