利用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());


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM