>백엔드 개발 >C++ >.NET Regex에서 명명된 캡처 그룹에 어떻게 액세스합니까?

.NET Regex에서 명명된 캡처 그룹에 어떻게 액세스합니까?

Barbara Streisand
Barbara Streisand원래의
2025-01-12 10:48:42364검색

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

.NET 정규식에서 명명된 캡처 그룹에 액세스

C#에서 정규식을 사용할 때는 명명된 캡처링 그룹에 액세스하는 방법을 이해하는 것이 중요합니다. 이를 통해 일치하는 텍스트의 특정 부분을 쉽게 검색할 수 있습니다.

귀하의 예에서는 "link"와 "name"이라는 두 개의 명명된 캡처 그룹을 정의합니다. 그러나 현재 이름이 지정되지 않은 그룹에만 액세스를 제공하는 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.