C# 记事本【查找下一个】如何实现?

查找功能已经实现,查找下一个无从下手,查找对话框的查找按钮事件如下:privatevoidbtnFind_Click(objectsender,EventArgse){i... 查找功能已经实现,查找下一个无从下手,查找对话框的查找按钮事件如下:
private void btnFind_Click(object sender, EventArgs e)
{
if (textBox1.Text == string.Empty)
{
return;
}
else
{
keyword = textBox1.Text;
//区分大小写时
if (isCase)
{
//向下查找时
if (isDown)
{
pos = text.IndexOf(keyword, pos);
}
//向上查找时
else
{
upos = text.LastIndexOf(keyword, upos);
}
}
//不区分大小写时
else
{
//关键字为空时直接返回
if (textBox1.Text == string.Empty)
{
return;
}
else
{
//要查找的关键字
keyword = textBox1.Text;

//区分大小写时
if (isCase)
{
//向下查找时
if (isDown)
{
pos = text.IndexOf(keyword, pos);
}
//向上查找时
else
{
upos = text.LastIndexOf(keyword, upos);
}
}
//不区分大小写时
else
{
keyword = keyword.ToLower();
text = text.ToLower();

//向下查找时
if (isDown)
{
pos = text.IndexOf(keyword, pos);
}
//向上查找时
else
{
upos = text.LastIndexOf(keyword, upos);
}
}

//向下查找时
if (isDown)
{
if (pos == -1)
{
MessageBox.Show("找不到该字符串!");
pos = 0;
}
else
{
((MainForm)this.Owner).textBox1.Select(pos, keyword.Length);
pos++;
this.Owner.Activate();
}
}
//向上查找时
else
{
if (upos == -1)
{
MessageBox.Show("找不到该字符串!");
upos = text.Length;
}
else
{
((MainForm)this.Owner).textBox1.Select(upos, keyword.Length);
if (upos != 0)
//区分大小写时
if (isCase)
{
//向下查找时
if (isDown)
{
pos = text.IndexOf(keyword, pos);
}
//向上查找时
else
{
upos = text.LastIndexOf(keyword, upos);
}
}
//不区分大小写时
else
{
keyword = keyword.ToLower();
text = text.ToLower();

//向下查找时
if (isDown)
{
pos = text.IndexOf(keyword, pos);
}
//向上查找时
else
{
upos = text.LastIndexOf(keyword, upos);
}
}

//向下查找时
if (isDown)
{
if (pos == -1)
{
MessageBox.Show("找不到该字符串!");
pos = 0;
}
else
{
((MainForm)this.Owner).textBox1.Select(pos, keyword.Length);
pos++;
this.Owner.Activate();
}
}
//向上查找时
else
{
if (upos == -1)
{
MessageBox.Show("找不到该字符串!");
upos = text.Length;
}
else
{
((MainForm)this.Owner).textBox1.Select(upos, keyword.Length);
if (upos != 0)
{
upos--;
}
this.Owner.Activate();
}
}
}
}
}
}
}
}
展开
 我来答
房雁凡s9
2010-09-20 · TA获得超过1360个赞
知道小有建树答主
回答量:504
采纳率:100%
帮助的人:504万
展开全部
string indexPageString = "helloworld hellocode";//原始字符串
string searchString="hello";//待查询的字符串
int firstPosition = indexPageString.IndexOf(searchString);//第一个的位置
int nextPOstion = indexPageString.IndexOf(searchString, firstPosition + searchString.Length); //下一个的位置
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yinzuo1988
2010-09-20 · TA获得超过116个赞
知道答主
回答量:72
采纳率:0%
帮助的人:65.5万
展开全部
试试 正则表达式 吧!
应该能完成!
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式