查找字符串中某字符出现次数的方法
(一)
int c0 = str.Length - str.Replace("a", String.Empty).Length;
利用替换的方式找,效率不高
(二)
int c2 = 0;
for (int i = 0; i < str.Length; i++)
{
if (str[i] == 'a')
{
c2++;
}
}
效率高
(三)
int c3 = str.Split(new char[] { 'a' }).Length - 1;
效率最低,是利用吧字符断成数组的原理来实现~
以上三种只能查单个字符的出现次数,那么要查找字符串的出现次数呢?
(四)查找字符串出现次数的方法
int c1 = 0;
for (int i = 0; i < str.Length; i++)
{
for (int j = 1; j <= (str.Length - i); j++)
{
if (str.Substring(i, j) == "aabbcc")
{
c1++;
}
}
}
(五)高效查找字符串出现次数的方法(本人参考上面方法优化了下,执行效率很高)
- string str = "fecvcsdwfchkeov[page]ove283673ewekl[page]fsdh5d37op"; //被查的字符串
- int count = 0; //计数器
- string search = "[page]"; //要查的字符串
- for (int i = 0; i < str.Length-search.Length; i++)
- {
- if (str.Substring(i, search.Length) == search)
- {
- count++;
- }
- }