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

정규 표현식은 문자열에서 패턴을 찾거나 변형하는 데 사용되는 강력한 도구입니다. 파이썬에서는 re 모듈을 사용하여 정규 표현식을 구현할 수 있습니다. 정규 표현식의 매칭 결과를 조합하여 다양한 문자열 조작 작업을 수행할 수 있습니다. 이번 블로그 포스트에서는 파이썬에서 정규 표현식의 매칭 결과 문자열을 조합하는 방법을 살펴보겠습니다.

매칭 결과 문자열 추출

먼저, 정규 표현식의 매칭 결과에서 특정 부분 문자열을 추출하는 방법을 알아봅시다. re 모듈의 search() 함수를 사용하여 첫 번째로 매칭되는 부분 문자열을 추출할 수 있습니다. 다음은 정규 표현식 패턴이 “apple”인 경우 문자열에서 “apple”을 추출하는 예시입니다.

import re

text = "I have an apple"
pattern = r"apple"
match = re.search(pattern, text)

if match:
    matched_string = match.group()
    print(matched_string)  # 출력 결과: "apple"

매칭 결과 문자열 치환

정규 표현식을 사용하여 매칭된 부분을 다른 문자열로 치환할 수도 있습니다. re 모듈의 sub() 함수를 사용하여 매칭된 부분을 치환할 수 있습니다. 다음은 문자열에서 “apple”을 “orange”로 바꾸는 예시입니다.

import re

text = "I have an apple"
pattern = r"apple"
replaced_text = re.sub(pattern, "orange", text)

print(replaced_text)  # 출력 결과: "I have an orange"

매칭 결과 문자열 분할

정규 표현식의 매칭 결과를 사용하여 문자열을 분할할 수도 있습니다. re 모듈의 split() 함수를 사용하여 매칭된 부분을 기준으로 문자열을 분할할 수 있습니다. 다음은 문자열을 공백을 기준으로 분할하는 예시입니다.

import re

text = "Hello   World"
pattern = r"\s+"
splitted_text = re.split(pattern, text)

print(splitted_text)  # 출력 결과: ['Hello', 'World']

매칭 결과 문자열 추출 및 치환 결합

정규 표현식의 매칭 결과를 추출하고 치환한 후에 두 문자열을 결합할 수도 있습니다. 다음은 “apple”을 “orange”로 치환한 후 추출된 매칭 결과와 결합하는 예시입니다.

import re

text = "I have an apple"
pattern = r"apple"
replaced_text = re.sub(pattern, "orange", text)

match = re.search(pattern, replaced_text)

if match:
    matched_string = match.group()
    final_result = matched_string + replaced_text
    print(final_result)  # 출력 결과: "orange I have an orange"

정규 표현식의 매칭 결과 문자열 조합은 다양한 작업에 유용하게 사용될 수 있습니다. 이러한 기능을 활용하여 복잡한 문자열 조작 작업을 간단하게 수행할 수 있습니다.

참고 자료: