파이썬 finditer 메서드의 캡처 그룹
finditer 메서드에서도
캡처 그룹을 사용할 수 있습니다.
실제로 살펴보겠습니다. 다음과 같은 문자열이 있다고 가정해 봅시다:
txt = 'aaaa 123 bbbb 456'
문자열 안에 있는 모든 숫자를 캡처 그룹에 나누어 담아 보겠습니다. 그리고 객체들을 반복문으로 순회하면서 첫 번째 매치(이것은 0번 캡처 그룹으로 간주됩니다)와, 그것의 요소들 역시 각각 캡처 그룹에 나누어 담아 출력해 보겠습니다:
res = re.finditer('(\d)(\d)', txt)
for el in res:
print(el[0], el[1], el[2])
코드를 실행한 후에는 0번 캡처 그룹, 즉 전체 부분 문자열과 이 부분 문자열의 첫 번째 및 두 번째 문자가 출력됩니다:
'12 1 2'
'45 4 5'
다음 문자열이 주어졌습니다:
txt = 'aaa 123 bbb 456 987'
숫자로 이루어진 모든 부분 문자열을 세 개의 캡처 그룹에 나누어 담으세요. 그리고 반복문을 사용하여 출력하세요.