C で正規表現と文字列マッチングを使用する方法
#正規表現は、パターン マッチングや抽出で文字列を効果的に照合するのに役立つ強力なテキスト処理ツールです。 C# では、System.Text. RegularExpressions 名前空間の Regex クラスを使用することで、文字列の一致に正規表現を簡単に使用できます。この記事では、C# で文字列一致に正規表現を使用する方法と具体的なコード例を紹介します。
ステップ 1: 名前空間を参照する
まず、C# コード ファイルで System.Text. RegularExpressions 名前空間を参照して、Regex クラスを使用できるようにします。コード ファイルの先頭に次のコードを追加できます。
using System.Text.RegularExpressions;
ステップ 2: 正規表現オブジェクトを作成する
次に、正規表現を表す Regex オブジェクトを作成する必要があります。このオブジェクトは、Regex クラスのコンストラクターを使用して作成できます。コンストラクターは、正規表現のパターン文字列である 1 つのパラメーターを受け入れます。たとえば、電子メール アドレスの正規表現を照合する場合は、次のコードを使用できます。
string pattern = @"^[w-]+(.[w-]+)*@([w-]+.)+[a-zA-Z]{2,7}$"; Regex regex = new Regex(pattern);
上記のコードでは、パターン変数には、電子メール アドレスの照合に使用される正規表現文字列が格納されます。 @ 記号は、文字列が生の文字列であることを指定するために使用されます。これにより、エスケープ文字を追加処理せずに正規表現パターンを直接入力できます。
ステップ 3: 一致操作を実行する
正規表現オブジェクトが作成されたら、それを使用して文字列一致操作を実行できます。 Regex クラスは、これを実現するための一連のメソッドを提供します。その中で最も一般的に使用されるのは、Match メソッドと Matches メソッドです。
Match メソッドは、指定された文字列内で最初に一致する部分文字列を検索するために使用されます。一致する部分文字列が見つかった場合は Match オブジェクトを返し、それ以外の場合は null を返します。 Match メソッドの使用例を次に示します。
string input = "My email is john.doe@example.com"; Match match = regex.Match(input); if (match.Success) { Console.WriteLine("找到匹配的邮件地址:" + match.Value); }
上記のコードでは、regex.Match メソッドを呼び出して、入力文字列内の電子メール アドレスに一致する部分文字列を検索します。一致する部分文字列が見つかった場合は、match.Value プロパティを使用して一致する部分文字列を取得し、出力します。
Matches メソッドは Match メソッドに似ていますが、指定された文字列内で一致するすべての部分文字列を検索します。 Matches メソッドは、一致するすべての部分文字列を含む MatchCollection オブジェクトを返します。以下は、Matches メソッドの使用例です。
string input = "My email is john.doe@example.com, and my friend's email is jane.doe@example.com"; MatchCollection matches = regex.Matches(input); foreach (Match match in matches) { Console.WriteLine("找到匹配的邮件地址:" + match.Value); }
上記のコードでは、regex.Matches メソッドを呼び出して、入力文字列内の電子メール アドレスに一致するすべての部分文字列を検索します。次に、foreach ループを使用して MatchCollection オブジェクトを反復処理し、一致する各部分文字列を出力します。
ステップ 4: 正規表現を使用して置換する
正規表現は、一致させるだけでなく、文字列内の部分文字列を置換するためにも使用できます。 C# では、Regex クラスはこれを実現する Replace メソッドを提供します。次に、Replace メソッドの使用例を示します。
string input = "My email is john.doe@example.com"; string replacement = "***"; // 替换邮件地址的字符串 string result = regex.Replace(input, replacement); Console.WriteLine("替换后的字符串:" + result);
上記のコードでは、regex.Replace メソッドを呼び出して、一致する電子メール アドレスを指定された文字列に置き換えます。置換の結果は result 変数に格納され、出力されます。
要約すると、上記は、C# で正規表現と文字列一致を使用するための基本的な手順とコード例です。この知識を習得すると、さまざまな文字列操作タスクをより柔軟かつ効率的に処理できるようになります。この記事がお役に立てば幸いです!
以上がC# で正規表現と文字列マッチングを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。