利用C#编程计算某个字符在某个字符串中出现的次数【转】

2021/8/2 11:07:15

本文主要是介绍利用C#编程计算某个字符在某个字符串中出现的次数【转】,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

一、利用Replace(效率不高)

代码1:

string test = "good good study day day up";
string r = test.Replace("oo", "");
int num = (test.Length - r.Length)/2;
Console.WriteLine(num);

test = "good good study day day up";
r = test.Replace("o", "");
num = (test.Length - r.Length);
Console.WriteLine(num);

二、利用Split(效率最低)

test = "good good study day day up";

int i = test.Split('d').Length - 1;

代码3:

test = "good good study day day up";
int a = test.Split(new string[] { "oo" }, StringSplitOptions.None).Length - 1;

三、利用循环(效率高)

int c2 = 0;

for (int i = 0; i < test .Length; i++)

{

     if (test [i] == 'a')

     {

                    c2++;

      }

}

四、利用正则表达式

Regex rege = new Regex("o", RegexOptions.Compiled);

int count = rege.Matches(test).Count;

五、高效查找字符串出现次数

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++;
     }
}

六、IndexOf、While查找

string text = "今天下雪了吗,明天不会下雪了吧,什么时候才不下雪啊,我要去上学啊!";
string keyWord = "下雪";
int index = 0;
int count = 0;
while ((index = text.IndexOf(keyWord,index)) != -1)
{
count++;
Console.WriteLine("第{0}次;索引是{1}", count, index);
index = index + keyWord.Length;
}
Console.WriteLine("下雪出现的总次数:{0}", count);

七、foreach

int count;
string str="abcbabcbabbcabbabcccc";
foreach(char s in str)
{
  if(s=="a")
  {
     count++;
  }
}
console.write(count.tostring());



这篇关于利用C#编程计算某个字符在某个字符串中出现的次数【转】的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程