我正在选择 richtextbox1 中的特定文本部分并使用正则表达式替换它。替换文本后,我的选择消失了。即使在替换后我也想保持相同的选择。因为我有多个替换来执行每个不同的替换,所以我需要保留选择,否则我必须一次又一次地选择该特定文本。请就此提出建议。
string str = richTextBox1.SelectedText;
int caretIndex = richTextBox1.SelectionStart;
int lineNumber = richTextBox1.GetLineFromCharIndex(caretIndex);
Point characterXY = richTextBox1.GetPositionFromCharIndex(caretIndex);
int characterIndex = richTextBox1.GetCharIndexFromPosition(characterXY);
richTextBox1.SelectedText = Regex.Replace(str, "123", "456");
使用此代码
var str = richTextBox1.SelectedText;
var start = richTextBox1.SelectionStart;
var end = richTextBox1.SelectionLength;
richTextBox1.SelectedText = Regex.Replace(str, "123", "456");
richTextBox1.Focus();
richTextBox1.Select(start, start + end);