코드 반환 한 다음C# 정규식 그룹 배수 캡처
Regex.Match("aaa", "(a)").Groups[1].Captures.Count
하지만 3를 받으실 : 나는 세 가지 캡처를 참조하십시오.
코드 반환 한 다음C# 정규식 그룹 배수 캡처
Regex.Match("aaa", "(a)").Groups[1].Captures.Count
하지만 3를 받으실 : 나는 세 가지 캡처를 참조하십시오.
당신은 경기 수를 얻을 중 하나가 필요합니다. 위의 첫 번째 예제에서는 해당 정규식을 세 번 일치시킬 수 있습니다. 정규식은 한 번에 여러 a
의 일치 및 캡처 두 번째 예에서는
그룹으로 각각 1
선택은 당신이 그들 사이의 다음과 같은 차이점 고려해야 만들려면 :
Regex.Matches("aaba", "(a)").Count // this is 3
Regex.Match("aaba", "(a)+").Groups[1].Captures.Count // this is 2
두 번째를 두 개의 첫 번째 시퀀스 인 a
과 일치하기 때문에 캡처가 두 번 발생하지만 b
을 찾으면 일치가 중지됩니다. +
한정 기호는 깨지지 않은 시퀀스와 만 일치합니다.
Regex.Matches
method을 대신 사용 하시겠습니까?
Regex.Matches("aaa", "(a)").Count
또는 정규식에 한정 기호를 추가합니다 :
Regex.Match("aaa", "(a)+").Groups[1].Captures.Count
정규식 (a)
일치하는 단 하나의 a
여러 그룹을 캡쳐하려면 'Regex.Matches'를 사용하면 모든 일치 항목이있는 MatchCollection을 반환합니다. –