[파이썬] 정규 표현식의 매칭 결과 문자열 대체
정규 표현식(regular expression)은 문자열에서 특정 패턴을 찾거나 일치시키기 위해 사용되는 강력한 도구입니다. 이러한 패턴을 사용하여 문자열을 매칭(matching)하고 원하는 결과를 얻을 수 있습니다. 파이썬에서는 re
모듈을 사용하여 정규 표현식을 다룰 수 있습니다.
정규 표현식의 매칭 결과에 대한 문자열 대체(replacement)는 매우 유용한 작업입니다. 대체를 통해 특정 패턴을 다른 문자열로 변경하거나 제거할 수 있습니다. 이러한 기능을 파이썬에서는 re.sub()
함수를 사용하여 수행할 수 있습니다.
re.sub()
함수의 사용법
re.sub()
함수는 다음과 같은 형식을 가지고 있습니다.
re.sub(pattern, replacement, string, count=0, flags=0)
pattern
: 대체하고자 하는 문자열 패턴을 나타내는 정규 표현식입니다.replacement
: 대체하고자 하는 문자열입니다. 패턴과 일치하는 부분은 이 문자열로 대체됩니다.string
: 대체 작업을 수행할 원본 문자열입니다.count
(optional): 대체할 횟수를 제한하는 정수 값입니다. 기본값은 0이며, 모든 일치하는 패턴을 대체합니다.flags
(optional): 정규 표현식의 플래그를 설정하는 옵션입니다.
예제: 이메일 주소 숨기기
다음은 이메일 주소를 숨기기 위해 정규 표현식의 매칭 결과 문자열 대체를 사용하는 예제 코드입니다.
import re
def hide_email(email):
pattern = r'([a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+)'
replacement = r'[이메일 숨김]'
hidden_email = re.sub(pattern, replacement, email)
return hidden_email
email = "example@example.com"
hidden_email = hide_email(email)
print(hidden_email) # 출력: [이메일 숨김]
위 예제에서는 hide_email()
함수를 정의하여 이메일 주소를 받아와서 정규 표현식으로 패턴을 매칭한 후 대체 작업을 수행합니다. 패턴은 일반적인 이메일 주소 형식을 나타내며, 대체할 문자열은 [이메일 숨김]
으로 설정되어 있습니다. re.sub()
함수를 사용하여 이메일 주소를 숨긴 후 결과를 반환합니다.
요약
정규 표현식의 매칭 결과 문자열 대체는 파이썬에서 매우 유용한 작업 중 하나입니다. re.sub()
함수를 사용하여 정규 표현식을 적용하고 원하는 패턴을 대체하는 것은 간단하면서도 강력한 도구입니다. 이를 통해 문자열 처리 작업을 효과적으로 수행할 수 있습니다.