프로그래밍언어/파이썬[중급]
[파이썬][중급] Chapter37. 정규표현식(re 모듈) 기초
about_IT
2025. 5. 24. 00:06
728x90
정규표현식(Regular Expression, RegEx)은 문자열에서 특정 패턴을 찾거나 치환할 때 사용되는 강력한 도구입니다. 파이썬에서는 re
모듈을 통해 정규표현식을 사용할 수 있으며, 로그 분석, 데이터 정제, 패턴 검증 등 다양한 작업에 활용됩니다.
● re 모듈 기본 사용법
import re
text = "Python is powerful and fast"
match = re.search(r"power\w+", text)
print(match.group()) # powerful
re.search()
는 문자열 전체에서 첫 번째로 일치하는 결과를 찾고, group()
으로 추출할 수 있습니다.
● match와 fullmatch
match()
는 문자열의 시작 부분만 검사하고, fullmatch()
는 전체 문자열이 패턴에 맞는지 확인합니다.
re.match(r"Py\w+", "Python") # 일치
re.fullmatch(r"\d{3}-\d{4}", "123-4567") # 일치
● findall과 finditer
text = "Email: aaa@test.com, bbb@test.co.kr"
emails = re.findall(r"[\w.]+@[\w.]+", text)
print(emails)
findall()
은 모든 일치 항목을 리스트로 반환하고, finditer()
는 match 객체 이터레이터를 반환합니다.
● 문자열 치환
text = "가격: 5000원"
new_text = re.sub(r"\d+", "****", text)
print(new_text) # 가격: ****원
sub()
은 정규식에 해당하는 부분을 새 문자열로 치환합니다.
● 자주 쓰는 패턴 정리
\d
: 숫자\w
: 알파벳/숫자/언더스코어\s
: 공백 문자.
: 아무 문자 하나*
: 0회 이상 반복+
: 1회 이상 반복{n}
: 정확히 n회 반복[]
: 문자 집합^
: 문자열 시작$
: 문자열 끝
● 마무리
정규표현식은 다양한 텍스트 처리 작업에서 핵심적인 도구입니다. 복잡한 문자열 필터링과 치환이 필요할 때는 re 모듈과 정규표현식을 적극적으로 활용해보세요. 단, 가독성을 위해 주석이나 테스트 코드를 함께 작성하는 습관도 중요합니다.
728x90