Visual C# と正規表現を使用してパターンを照合する
この詳細な記事では、正規表現を作成して使用して、文字列が特定のパターンと一致するかどうかを判断する方法について説明します。
元の製品バージョン: Visual C#
元の KB 番号: 308252
概要
正規表現を使用すると、特定のパターンに対する文字列の解析と照合を簡単に行うことができます。 名前空間で使用できるオブジェクトを RegularExpressions
使用すると、特定のパターンと文字列を比較したり、文字列パターンを別の文字列に置き換えたり、書式設定された文字列の一部のみを取得したりできます。 この例では、電子メール アドレスを検証するパターンを作成します。 この記事では、Microsoft .NET Framework クラス ライブラリ名前空間 を参照しますSystem.Text.RegularExpressions
。
要件
この記事では、次のトピックについて理解していることを前提としています。
- Visual C#
- 正規表現の構文
正規表現を使用してパターンに一致させる
Visual C# を起動します。
新しい Visual C# コンソール アプリケーションを作成します。
コードの後半でこれらの名前空間の宣言を
Text.RegularExpressions
修飾する必要がないように、名前空間に using キーワード (keyword)を指定します。 using ステートメントは、他の宣言の前に使用する必要があります。using System.Text.RegularExpressions;
パターン一致を使用して電子メール アドレスを検証する新しい正規表現を定義します。 次の正規表現は、次の 3 つのことを実現するために構成されています。
- シンボルの前に部分文字列を
@
キャプチャし、その部分文字列をグループに配置しますuser
。 - シンボルの後に部分文字列を
@
キャプチャし、その部分文字列をグループに配置しますhost
。 - 文字列の前半に記号がないことを
@
確認します。
Regex emailregex = new Regex("(?<user>[^@]+)@(?<host>.+)");
- シンボルの前に部分文字列を
有効な電子メール アドレスを含む新しい文字列を定義します。 メソッドのコマンド ライン引数が空の場合、既定値が提供されます。
String s = "johndoe@tempuri.org";
コマンド ライン パラメーターがあるかどうかを確認します。がある場合は、最初のパラメーターを取得し、変数
s
に割り当てます。if (args.Length > 0) { s = args[0]; }
メソッドを
Match
使用して電子メール アドレス変数を渡し、新しいMatch
オブジェクトを返します。 オブジェクトはMatch
、ソース文字列で一致が見つかったかどうかに関係なくを返します。Match m = emailregex.Match(s);
プロパティを調べることで、オブジェクトの
Success
処理を続行するか、エラー メッセージをMatch
出力するかを決定できます。 成功した場合は、 オブジェクトのuser
コレクション内にGroups
およびhost
という名前のグループをMatch
表示します。if (m.Success) { Console.WriteLine ("User: " + m.Groups["user"].Value); Console.WriteLine ("Host: " + m.Groups["host"].Value); } else { Console.WriteLine (s + " is not a valid email address"); } Console.WriteLine ();
アプリケーションの実行後もコンソール ウィンドウを開いたままにするには、次のコード行を追加します。
System.Console.WriteLine("Press Enter to Continue..."); System.Console.ReadLine();
プロジェクトをビルドします。
コードで指定された既定の電子メール アドレスを使用して開発環境でアプリケーションを実行するには、F5 キーを押すか、[デバッグ] メニューから [開始] を選択します。 コマンド ライン引数を使用してアプリケーションを起動するには、次の 3 つのオプションがあります。
- [ プロジェクト ] メニューの [ プロパティ] をクリックし、[ デバッグ] をクリックします。 右側のウィンドウの [ スタート オプション] セクションで、テストする電子メール アドレスを指定します。 F5 キーを押すか、[デバッグ] メニューの [スタート] をクリックしてアプリケーションを実行します。
- コマンド ウィンドウを起動し、プロジェクトが存在するフォルダーの下にある bin フォルダーまたは デバッグ フォルダーに移動します。 次に、実行可能ファイルの名前を入力し、テストする電子メール アドレスを入力します。
- このプロジェクトの実行可能ファイルを見つけて、 Start..にドラッグします。 タスク バーの [実行] ウィンドウ。 確認する電子メール アドレスを追加し、[OK] をクリック します。
関連情報
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示