首頁 > 後端開發 > C++ > 如何存取 .NET Regex 中的命名擷取群組?

如何存取 .NET Regex 中的命名擷取群組?

Barbara Streisand
發布: 2025-01-12 09:10:41
原創
114 人瀏覽過

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

在 .NET 正規表示式中存取命名捕獲組

在 .NET 正規表示式中存取命名捕獲組需要使用 MatchCollection.Groups 屬性,並使用捕獲組名稱作為索引。讓我們解決您在程式碼中遇到的問題:

<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);
CaptureCollection cc = mc[0].Captures;
MessageBox.Show(cc[0].ToString());</code>
登入後複製

這段程式碼嘗試透過存取 Captures 集合來檢索捕獲組的值,但它只檢索整個匹配的字串。要存取特定的命名捕獲組,您需要使用 MatchCollection.Groups 屬性,如下所示:

<code class="language-csharp">foreach (Match m in mc)
{
    MessageBox.Show(m.Groups["link"].Value); // 将 "link" 替换为任何其他命名捕获组名称
}</code>
登入後複製

透過使用擷取群組名稱(例如,「link」)作為 MatchCollection.Groups 屬性的索引,您可以檢索該特定命名擷取群組的值。在此範例中,m.Groups["link"].Value 表達式會擷取名為「link」的擷取群組的值。

以上是如何存取 .NET Regex 中的命名擷取群組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板