- 정규식을 사용하면 문자열에서 특정한 문자열을 찾아 다른 문자열로 대체할 수 있다.
- 파이썬에서는 re 모듈의 sub() 함수를 사용하여 문자열 대체를 수행한다.
- sub() 함수의 매개변수는 다음과 같다.

- pattern : 찾고자 하는 문자열 패턴을 나타내는 정규식
- repl : 대체할 문자열
- string : 검색 대상이 되는 문자열
- count : 대체를 수행할 최대 횟수
- flags : 정규식의 동작 방식을 제어하는 플래그
문자열에서 숫자 모두 제거하기
text = 'abc123def456'
result = re.sub(r'\d', '', text)
print(result)
문자열에서 이메일 주소를 모두 마스킹 처리하기
text = 'My email is john@example.com'
result = re.sub(r'\w+@\w+\.\w+', '****', text)
print(result)
날짜 형식 변경하기
- 괄호() 사이에 있는 패턴은 하나의 그룹으로 취급된다.
- r'\3-\1-\2': 이 패턴에서 \3은 세 번째 그룹을 나타내고, \1, \2는 각각 첫 번째 패턴과 두 번째 패턴을 나타낸다.
text = '03/17/2024'
new_text = re.sub(r'(\d{2})/(\d{2})/(\d{4})', r'\3-\1-\2', text)
print(new_text)
입력을 받아 HTML 태그만 제거하기
html = input("HTML 문장을 입력하세요: ")
pattern = r'<[^>]+>'
result = re.sub(pattern, '', html)
print(result)
문자열에서 숫자와 알파벳을 제외한 모든 문자를 제거하기
text = 'This is a string !@#$%$^*()_+ characters'
pattern = r'[^a-zA-Z0-9]|_'
result = re.sub(pattern, '', text)
print(result)