c#中的字符串查找函数

c#中有没有一个字符串查找函数,可以查找出一个字符串中是否包含另一个字符串,若查找成功则返回true,否则返回false。... c#中有没有一个字符串查找函数,可以查找出一个字符串中是否包含另一个字符串,若查找成功则返回true,否则返回false。 展开
 我来答
百度网友faadf46
高粉答主

2019-09-01 · 说的都是干货,快来关注
知道答主
回答量:4556
采纳率:0%
帮助的人:73.9万
展开全部

1、首先,自定义一个函数,实现是否子串的判断。

2、自定义函数中,定义一个字符数组,保存得到的子串。

3、如果子串为空,则输出整个字符串c。

4、用while语句循环判断字符串的每个字符,条件为首字符存在。

5、逐一判断每个字符,如果字符都相等,说明存在子串,输出得到的子串。

6、如果以字符串的某字符起始判断不存在子串,则接着判断下一个字符。

7、定义两个字符串数组,保存判断的字符串。

8、最后,调用自定义函数,用if语句判断是否为子串,如果结果不为空则输出是子串,如果结果为空则输出不是子串。

认真还挺拔灬仙人掌H
推荐于2017-11-23 · TA获得超过108个赞
知道答主
回答量:69
采纳率:0%
帮助的人:68.3万
展开全部
indexOf()方法,查找某字符串在一个字符串内的位置,没有则返回-1
string aa="abcdef";
int a=aa.indexOf("bc");//a会等于1
int b=aa.indexOf("a");//b会等于0
int c=aa.indexOf("g");c会等于-1
所以你只要判断返回出来的int值是不是小于0就知道这个字符串里有没有包含指定的另一个字符串
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
猴看灯
2010-06-23
知道答主
回答量:15
采纳率:0%
帮助的人:0
展开全部
bool contain=longstr.Contains("aaa");
但是这个方法是System.Linq中的
所以VS2005以及以下版本是不支持的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1f1d830
2010-06-22 · TA获得超过785个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:210万
展开全部
有就是indexOf()方法,查找子串在一个字符串内的起始位置,它有九个重载,你自己研究研究
也可以自己写的,下面是我自己改写了一个,是用那个著名的kmp算法查找的(这个方法查找的效率是最高的),关于这个算法你可以 百度一下,我就不多说了(学习学习总是好的,呵呵 )
下面的代码粘到窗体里就能用了....
int[] next = new int[20];//全局变量
private void get_next(string p)
{
int i = 1, j = 0; next[1] = 0;
while (i < p.Length)
{
if (j == 0 || p.Substring(i - 1, 1) == p.Substring(j - 1, 1))
{
++i; ++j;
if (p.Substring(i - 1, 1) != p.Substring(j - 1, 1))
next[i] = j;
else next[i] = next[j];
}
else j = next[j];
}
}

private bool b_kmp(string s, string p)//s是主串p是要查找的子串
{
get_next(p);
int i = 1, j = 1;
while (i <= s.Length && j <=p.Length)
{
if (j == 0 || s.Substring(i - 1, 1) == p.Substring(j - 1, 1)) { ++i; ++j; }
else j = next[j];
}
if (j > p.Length) return true;
else return false;
}
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(b_kmp (textBox1.Text,textBox2.Text).ToString());
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
goodbiker
2010-06-22
知道答主
回答量:15
采纳率:0%
帮助的人:0
展开全部
public bool IsInclude(string reStr, string seStr){
return reStr.indexOf(seStr) >= 0 ;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式