Capture 는 성공한 단일 하위 식 캡처의 결과를 표현합니다.
정규식 패턴은 아래를 참고하세요.
(\w+) | 하나 이상의 단어 문자를 찾습니다. 이 그룹은 두 번째 캡처링 그룹입니다. |
[\s.]) | 공백 문자 또는 마침표(".")를 찾습니다. |
((\w+)[\s.]) | 하나 이상의 단어 문자 뒤에 공백 문자 또는 마침표(".")를 찾습니다. 이 그룹은 첫 번째 캡처링 그룹입니다. |
((\w+)[\s.])+ | 하나 이상의 단어 문자 또는 문자와 공백 문자 또는 마침표(".")를 찾습니다. |
using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string input = "colors. red yellow blue gray black.";
// 하나 이상의 단어 문자 또는 문자와 공백 문자 또는 마침표(".")를 찾습니다.
// 아래의 패턴으로 검색된 Capture Group을 확인할 수 있습니다.
// colors 뒤의 마침표를 기준으로 두 문단으로 나누어져 Capture됩니다.
string pattern = @"((\w+)[\s.])+";
foreach (Match match in Regex.Matches(input, pattern))
{
Console.WriteLine("Match: {0}", match.Value);
for (int groupCtr = 0; groupCtr < match.Groups.Count; groupCtr++)
{
Group group = match.Groups[groupCtr];
Console.WriteLine(" Group {0}: {1}", groupCtr, group.Value);
for (int captureCtr = 0; captureCtr < group.Captures.Count; captureCtr++)
Console.WriteLine(" Capture {0}: {1}", captureCtr,
group.Captures[captureCtr].Value);
}
}
}
}
<< 아래의 정규식도 참고 >>
\b | 단어 경계에서 일치 항목 찾기를 시작합니다. |
(\w+?) | 하나 이상의 단어 문자(가능한 한 적은 문자)를 찾습니다. 두 번째(내부) 캡처링 그룹입니다. (첫 번째 캡처링 그룹에는 언어 요소가 포함됩니다 \b .) |
[,:;]? | 쉼표, 콜론 또는 세미콜론이 0개 또는 1번 일치합니다. |
\s? | 공백 문자가 0개 또는 1번 일치하는지 찾습니다. |
(\b(\w+?)[,:;]?\s?)+ | 단어 경계, 하나 이상의 단어 문자, 문장 부호 기호 및 공백 문자로 구성된 패턴을 한 번 이상 일치합니다. 이 그룹은 첫 번째 캡처링 그룹입니다. |
[?.!] | 마침표, 물음표 또는 느낌표의 발생을 일치합니다. |