HOWTO · Csharp
C# で文字列内の文字の出現をカウントする
C# の文字列変数内の文字の出現回数を計算するために使用できる 3つの主要なメソッド、linq メソッド、String.Split()関数、および foreach ループがあります。
このチュートリアルでは、C# の文字列変数内の文字の出現回数を取得する方法を紹介します。
C# の Linq メソッドを使用して、文字列内の文字の出現をカウントする
Linq は、C# のデータ構造に SQL 機能を統合します。次のコード例は、C# の Linq メソッドを使用して文字列内の文字の出現回数を取得する方法を示しています。
using System;
using System.Linq;
namespace count_occurrences_of_a_char_in_string {
class Program {
static void Main(string[] args) {
string source = "/once/upon/a/time/";
int count = source.Count(f => f == 'o');
Console.WriteLine(count);
}
}
}
出力:
2
上記のコードでは、C# の Linq メソッドを使用して、文字列変数 source での文字 o の出現回数を計算しました。
C# の String.Split() メソッドを使用して、文字列内の文字の出現をカウントする
String.Split() メソッドは、C# の区切り文字に基づいて、文字列を複数のサブ文字列に分割します。String.Split(x) メソッドは、文字列内の x の出現回数よりも 1 文字多い文字列を返します。String.Split() メソッドによって返される文字列の数を数え、そこから 1 を引くと、メイン文字列内の文字の出現回数を取得できます。次のコード例は、C# の String.Split() メソッドを使用して、文字列変数内の文字の出現回数をカウントする方法を示しています。
using System;
using System.Linq;
namespace get_first_char_of_string {
class Program {
static void Main(string[] args) {
string source = "/once/upon/a/time/";
int count = source.Split('o').Length - 1;
Console.WriteLine(count);
}
}
}
出力:
2
上記のコードでは、C# の String.Split() 関数を使用して、文字列変数 source での文字 o の出現回数を計算しました。
C# の foreach ループを使用して、文字列内の文字の出現をカウントする
foreach ループは、C# のデータ構造を反復処理するために使用されます。foreach ループを使用して、文字列変数の各文字を反復処理し、その文字が C# の if ステートメントで目的の文字と一致するかどうかを確認できます。次のコード例は、C# の foreach ループを使用して、文字列内の文字の出現回数をカウントする方法を示しています。
using System;
using System.Linq;
namespace get_first_char_of_string {
class Program {
static void Main(string[] args) {
string source = "/once/upon/a/time/";
int count = 0;
foreach (char c in source) {
if (c == 'o') {
count++;
}
}
Console.WriteLine(count);
}
}
}
出力:
2
上記のコードでは、C# の foreach ループを使用して、文字列変数 source での文字 o の出現回数を計算しました。