Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 정규식 역참조가 어떻게 작동합니까?

<시간/>

그룹화

한 쌍의 괄호로 묶어 정규식의 일부를 그룹화합니다. 이런 식으로 단일 문자 대신 그룹에 연산자를 적용합니다.

그룹 및 역참조 캡처

괄호는 하위 표현식을 그룹화할 뿐만 아니라 역참조도 생성합니다. 정규식의 그룹화된 부분과 일치하는 문자열 부분은 역참조에 저장됩니다. 역참조를 사용하여 정규 표현식의 일부를 재사용합니다.

하위 표현식을 괄호 안에 넣으면 \1 또는 $1 등으로 액세스할 수 있습니다.

예를 들어, 정규식 \b(\w+)\b\s+\1\b는 tahiti tahiti와 같이 반복되는 단어와 일치합니다. (\w+) 안의 괄호는 그룹 1에 대한 단어를 캡처한 다음 역참조 \1은 그룹 1에서 캡처한 문자와 일치합니다.

예시

import re s ='Tahiti Tahiti Atoll' result =re.findall(r'\b(\w+)\b\s+\1\b', s) 결과 인쇄

출력

이것은 출력을 제공합니다.

['Tahiti']