ホームページ >バックエンド開発 >C++ >.NET Regex で名前付きキャプチャ グループにアクセスするにはどうすればよいですか?

.NET Regex で名前付きキャプチャ グループにアクセスするにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2025-01-12 10:48:42316ブラウズ

How Do I Access Named Capturing Groups in a .NET Regex?

.NET 正規表現での名前付きキャプチャ グループへのアクセス

C# で正規表現を使用する場合、名前付きキャプチャ グループにアクセスする方法を理解することが重要です。これにより、一致するテキストの特定の部分を簡単に取得できます。

この例では、「link」と「name」という 2 つの名前付きキャプチャ グループを定義します。ただし、現在、名前のないグループへのアクセスのみを提供する CaptureCollection を使用してこれらのグループにアクセスしようとしています。

名前付きキャプチャ グループにアクセスするには、Match オブジェクトの GroupCollection プロパティを使用する必要があります。各 Match オブジェクトには、名前付きグループと名前なしグループを含むグループのコレクションが含まれています。キャプチャ グループの名前を使用して GroupCollection にインデックスを付け、対応する一致を取得できます。

以下は、名前付きキャプチャ グループにアクセスする方法を示すコードの修正バージョンです:

<code class="language-csharp">string page = Encoding.ASCII.GetString(bytePage);
Regex qariRegex = new Regex("<td><a href=\"(?<link>.*?)\">(?<name>.*?)</a></td>");
MatchCollection mc = qariRegex.Matches(page);

foreach (Match m in mc)
{
    MessageBox.Show(m.Groups["link"].Value);
    MessageBox.Show(m.Groups["name"].Value);
}</code>

このコードは Match オブジェクトのコレクションを反復処理し、一致するたびに GroupCollection を使用して「リンク」および「名前」キャプチャ グループにアクセスし、その値を表示します。

以上が.NET Regex で名前付きキャプチャ グループにアクセスするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。