정규식 [\d+]가 파이썬에서 실제로 어떤 역할을 하는지 코드 예제를 통해 자세히 살펴보겠습니다.
[\d+] 패턴의 의미
[\d+]는 문자 클래스(character class)를 나타내며, 대괄호 안에 포함된 요소 중 하나와 일치합니다. 따라서 이 패턴은 다음 두 가지와 매칭됩니다.
- 숫자 한 자리 (0~9)
- '+' 문자
여기서 중요한 점은 대괄호 내부에서 '+'는 '한 번 이상 반복'을 의미하는 메타문자가 아니라, 단순히 일반 문자로 해석된다는 것입니다.
예제 코드
import re result = re.findall(r'[\d+]', 'Taran123tula+456') print(result)
실행 결과
['1', '2', '3', '+', '4', '5', '6']
결과 분석
re.findall() 함수는 문자열에서 패턴과 일치하는 모든 부분을 찾아 리스트로 반환합니다. 위 예제에서는 입력 문자열 'Taran123tula+456'에서 숫자 1, 2, 3, 4, 5, 6과 '+' 문자가 각각 개별 요소로 추출되어 출력되었습니다.
참고로, 연속된 숫자를 하나의 그룹으로 묶어 추출하고 싶다면 대괄호 없이 r'\d+' 패턴을 사용하면 됩니다. 이 경우 결과는 ['123', '456']처럼 반환됩니다. 문자 클래스 안과 밖에서 '+'의 의미가 달라지므로, 상황에 맞게 패턴을 선택하는 것이 중요합니다.