Group 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
단일 캡처링 그룹의 결과를 나타냅니다.
public ref class Group : System::Text::RegularExpressions::Capture
public class Group : System.Text.RegularExpressions.Capture
[System.Serializable]
public class Group : System.Text.RegularExpressions.Capture
type Group = class
inherit Capture
[<System.Serializable>]
type Group = class
inherit Capture
Public Class Group
Inherits Capture
- 상속
- 파생
- 특성
설명
캡처링 그룹은 수량자 때문에 단일 일치 항목에서 0개, 하나 이상의 문자열을 캡처할 수 있습니다. (자세한 내용은 수량자를 참조하세요.) 단일 캡처링 그룹과 일치하는 모든 부분 문자열을 속성에서 Group.Captures 사용할 수 있습니다. 캡처된 마지막 부분 문자열에 대한 정보는 및 Index
속성에서 Value
직접 액세스할 수 있습니다. 즉, Group 인스턴스는 캡처링 그룹에 의해 만들어진 마지막 캡처를 반영하는 속성에서 Captures 반환된 컬렉션의 마지막 항목과 동일합니다.
예를 들어 개체와 System.Text.RegularExpressions.CaptureCollection 속성에서 반환 Captures 되는 Group 개체 간의 관계를 명확히 하는 데 도움이 됩니다. 정규식 패턴 (\b(\w+?)[,:;]?\s?)+[?.!]
은 전체 문장과 일치합니다. 정규식은 다음 테이블과 같이 정의됩니다.
무늬 | 설명 |
---|---|
\b |
단어 경계에서 일치 항목 찾기를 시작합니다. |
(\w+?) |
하나 이상의 단어 문자(가능한 한 적은 문자)를 찾습니다. 두 번째(내부) 캡처링 그룹입니다. (첫 번째 캡처링 그룹에는 언어 요소가 포함됩니다 \b .) |
[,:;]? |
쉼표, 콜론 또는 세미콜론이 0개 또는 1번 일치합니다. |
\s? |
공백 문자가 0개 또는 1번 일치하는지 찾습니다. |
(\b(\w+?)[,:;]?\s?)+ |
단어 경계, 하나 이상의 단어 문자, 문장 부호 기호 및 공백 문자로 구성된 패턴을 한 번 이상 일치합니다. 이 그룹은 첫 번째 캡처링 그룹입니다. |
[?.!] |
마침표, 물음표 또는 느낌표의 발생을 일치합니다. |
이 정규식 패턴에서 하위 패턴 (\w+?)
은 문장 내의 여러 단어와 일치하도록 설계되었습니다. 그러나 개체의 Group 값은 캡처하는 (\w+?)
마지막 일치 항목만 나타내는 반면, 이 속성은 Captures 캡처된 모든 텍스트를 나타내는 값을 반환 CaptureCollection 합니다. 출력에 표시된 CaptureCollection 것처럼 두 번째 캡처 그룹에는 4개의 개체가 포함됩니다. 이 중 마지막 값은 개체에 Group 해당합니다.
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"(\b(\w+?)[,:;]?\s?)+[?.!]";
string input = "This is one sentence. This is a second sentence.";
Match match = Regex.Match(input, pattern);
Console.WriteLine("Match: " + match.Value);
int groupCtr = 0;
foreach (Group group in match.Groups)
{
groupCtr++;
Console.WriteLine(" Group {0}: '{1}'", groupCtr, group.Value);
int captureCtr = 0;
foreach (Capture capture in group.Captures)
{
captureCtr++;
Console.WriteLine(" Capture {0}: '{1}'", captureCtr, capture.Value);
}
}
}
}
// The example displays the following output:
// Match: This is one sentence.
// Group 1: 'This is one sentence.'
// Capture 1: 'This is one sentence.'
// Group 2: 'sentence'
// Capture 1: 'This '
// Capture 2: 'is '
// Capture 3: 'one '
// Capture 4: 'sentence'
// Group 3: 'sentence'
// Capture 1: 'This'
// Capture 2: 'is'
// Capture 3: 'one'
// Capture 4: 'sentence'
Imports System.Text.RegularExpressions
Module Example
Public Sub Main()
Dim pattern As String = "(\b(\w+?)[,:;]?\s?)+[?.!]"
Dim input As String = "This is one sentence. This is a second sentence."
Dim match As Match = Regex.Match(input, pattern)
Console.WriteLine("Match: " + match.Value)
Dim groupCtr As Integer = 0
For Each group As Group In match.Groups
groupCtr += 1
Console.WriteLine(" Group {0}: '{1}'", groupCtr, group.Value)
Dim captureCtr As Integer = 0
For Each capture As Capture In group.Captures
captureCtr += 1
Console.WriteLine(" Capture {0}: '{1}'", captureCtr, capture.Value)
Next
Next
End Sub
End Module
' The example displays the following output:
' Match: This is one sentence.
' Group 1: 'This is one sentence.'
' Capture 1: 'This is one sentence.'
' Group 2: 'sentence'
' Capture 1: 'This '
' Capture 2: 'is '
' Capture 3: 'one '
' Capture 4: 'sentence'
' Group 3: 'sentence'
' Capture 1: 'This'
' Capture 2: 'is'
' Capture 3: 'one'
' Capture 4: 'sentence'
속성
Captures |
안쪽-왼쪽 우선 순서로 캡처링 그룹을 사용하여 일치시킨 모든 캡처의 컬렉션을 가져옵니다. 정규식을 RightToLeft 옵션으로 수정한 경우에는 안쪽-오른쪽 우선 순서로 가져올 수 있습니다. 컬렉션에는 0이상의 항목이 있을 수 있습니다. |
Index |
원래 문자열에서 캡처된 부분 문자열의 첫째 문자를 찾은 위치입니다. (다음에서 상속됨 Capture) |
Length |
캡처된 부분 문자열의 길이를 가져옵니다. (다음에서 상속됨 Capture) |
Name |
현재 인스턴스로 표시되는 캡처링 그룹의 이름을 반환합니다. |
Success |
일치 작업이 성공적이었는지 여부를 나타내는 값을 가져옵니다. |
Value |
입력 문자열에서 캡처된 부분 문자열을 가져옵니다. (다음에서 상속됨 Capture) |
ValueSpan |
입력 문자열에서 캡처된 범위를 가져옵니다. (다음에서 상속됨 Capture) |
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
Synchronized(Group) |
여러 스레드 간에 공유해도 안전한 제공된 개체와 동등한 |
ToString() |
Value 속성을 호출하여 입력 문자열로부터 캡처된 하위 문자열을 검색합니다. (다음에서 상속됨 Capture) |