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

이번 포스트에서는 Python에서 정규 표현식을 사용하여 매칭 결과 문자열을 합치는 방법에 대해 알아보겠습니다.

정규 표현식은 문자열을 검색하거나 패턴을 찾는 데에 유용한 도구입니다. 매칭된 결과는 일반적으로 문자열의 리스트 형태로 반환되는데, 이를 하나의 문자열로 합치는 방법을 알아보겠습니다.

re 모듈 소개

Python에서 정규 표현식을 사용하기 위해선 re 모듈을 import 해야 합니다. re 모듈에는 정규 표현식과 관련된 다양한 함수들이 존재합니다.

import re

정규 표현식의 매칭 결과 합치기

정규 표현식의 매칭 결과는 re 모듈의 findall() 함수를 통해 얻을 수 있습니다. findall() 함수는 매칭된 결과를 리스트 형태로 반환합니다.

import re

text = "Hello, I am a programmer. Programming is awesome!"

matches = re.findall(r"\b\w+\b", text)
print(matches)

위의 코드에서는 \b\w+\b 패턴을 사용하여 단어들을 매칭하였습니다. 결과는 다음과 같이 출력됩니다.

['Hello', 'I', 'am', 'a', 'programmer', 'Programming', 'is', 'awesome']

이제 매칭된 결과를 하나의 문자열로 합치기 위해 join() 메소드를 사용할 수 있습니다.

import re

text = "Hello, I am a programmer. Programming is awesome!"

matches = re.findall(r"\b\w+\b", text)
result = "".join(matches)
print(result)

위의 코드에서는 "".join(matches)를 통해 매칭된 결과 문자열들을 연결하여 하나의 문자열로 만들었습니다. 결과는 다음과 같이 출력됩니다.

HelloIamaprogrammerProgrammingisawesome

findall() 함수 대신 search() 함수를 사용하여 첫 번째 매칭 결과만 찾을 수도 있습니다. 이 경우에도 join() 메소드를 사용하여 문자열을 합칠 수 있습니다.

import re

text = "Hello, I am a programmer. Programming is awesome!"

match = re.search(r"\b\w+\b", text)
result = "".join(match.group())
print(result)

위의 코드에서는 match 객체의 group() 메소드를 사용하여 매칭된 첫 번째 결과 문자열을 반환합니다. 결과는 다음과 같이 출력됩니다.

Hello

결론

Python에서는 정규 표현식을 사용하여 문자열을 매칭할 수 있습니다. 이때 매칭된 결과는 리스트 형태로 반환되며, 이를 join() 메소드를 사용하여 하나의 문자열로 합칠 수 있습니다. 이를 통해 정규 표현식을 이용한 패턴 매칭 결과를 효과적으로 활용할 수 있습니다.