richTextBox1中从上一次查找的字符串位置继续查找下一个字符串
时间: 2024-01-01 07:06:19 浏览: 69
您可以使用C#中的IndexOf方法,该方法可以在字符串中查找指定的字符串,并返回其在字符串中的位置。您可以将上一次找到的字符串的位置作为参数传递给IndexOf方法的startIndex参数,以便从上一次位置开始查找下一个字符串。
以下是一个示例代码:
```csharp
private int lastPosition = 0;
private void FindNext(string searchStr)
{
int position = richTextBox1.Text.IndexOf(searchStr, lastPosition);
if (position >= 0)
{
richTextBox1.Select(position, searchStr.Length);
lastPosition = position + searchStr.Length;
}
else
{
MessageBox.Show("未找到该字符串");
}
}
```
在此示例中,lastPosition是一个类级变量,用于存储上一次查找的字符串位置。在FindNext方法中,将lastPosition传递给IndexOf方法的startIndex参数,并将返回的位置保存在position变量中。如果找到了字符串,则选择该字符串,并将lastPosition更新为下一个位置。如果未找到字符串,则显示一个消息框。
您可以在您的应用程序中使用类似的代码来实现从上一次查找位置继续查找下一个字符串的功能。
阅读全文