[파이썬] 정규 표현식의 매칭 결과 문자열 추출

정규 표현식(Regular Expression)은 문자열에서 특정한 패턴을 찾거나 매칭하기 위해 사용되는 강력한 도구입니다. 이를 이용하여 원하는 문자열을 정확하게 추출할 수 있습니다.

Python에서는 re 모듈을 통해 정규 표현식을 사용할 수 있습니다. 이 모듈은 다양한 메소드를 제공하여 문자열에서 패턴을 검색하고 매칭된 결과를 추출할 수 있습니다.

다음은 정규 표현식의 매칭 결과 문자열을 추출하는 예제 코드입니다.

import re

# 문자열과 정규 표현식 패턴 정의
string = "Hello, my name is John. I am 27 years old."
pattern = r"name is (\w+). I am (\d+) years old"

# 정규 표현식 매칭 결과 추출
match = re.search(pattern, string)

if match:
    # 전체 매칭 결과 출력
    print("Full Match:", match.group(0))
    
    # 첫 번째 그룹 매칭 결과 출력
    print("Group 1:", match.group(1))
    
    # 두 번째 그룹 매칭 결과 출력
    print("Group 2:", match.group(2))
else:
    print("No match found.")

위 예제 코드에서는 “Hello, my name is John. I am 27 years old.”라는 문자열에서 “name is John. I am 27 years old” 부분을 추출해내고자 합니다. 따라서 해당 문자열을 정규 표현식 name is (\w+). I am (\d+) years old과 매칭시킵니다.

re.search() 메소드는 문자열에서 매칭되는 첫 번째 부분을 검색합니다. 이후 match.group() 메소드를 사용하여 매칭 결과를 추출할 수 있습니다. group(0)은 전체 매칭 결과를 나타내며, group(1), group(2)는 각각 첫 번째 그룹과 두 번째 그룹의 매칭 결과를 나타냅니다.

실행 결과는 다음과 같습니다.

Full Match: name is John. I am 27 years old
Group 1: John
Group 2: 27

위 예제 코드를 참고하여 정규 표현식을 사용하여 원하는 매칭 결과 문자열을 추출해보세요. 정규 표현식은 복잡한 패턴을 사용할 수 있으므로 유용한 도구로 활용할 수 있습니다.