## 점프 투 파이썬 - 정규 표현식 살펴보기
# 정규 표현식이란?
Regular Expressions은 복잡한 문자열을 처리할때 사용하는 기법으로, 문자열을 처리하는 모든곳에서 사용한다.
# 정규식이 필요한 이유
Ex) 주민등록번호를 포함하고 있는 텍스트가 있다. 이 텍스트에 포함된 모든 주민등록번호의 뒷자리를 * 문자로 변경해 보자.
정규식이 없다면
1. 텍스트를 공백으로 나눈다.
2. 주민등록 번호의 형식인지 조사 ( xxxxxx-xxxxxxx )
3. 뒷자리를 *로 변환
data = """
park 800905-1049118
kim 700905-1059119
"""
result = []
for line in data.split("\n"):
word_result = []
for word in line.split(" "):
if len(word) == 14 and word[:6].isdigit() and word[7:].isdigit():
word = word[:6] + "-" + "*******"
word_result.append(word)
result.append(" ".join(word_result))
print("\n".join(result))
정규식을 사용하면
import re
data = """
park 800905-1049118
kim 700905-1059119
"""
pat = re.compile("(\d{6})[-]\d{7}")
print(pat.sub("\g<1>-*******", data))
두 코드의 결과값
>>>
park 800905-*******
kim 700905-*******
정규식을 사용하면 간단하게 복잡한 문자열을 처리할 수 있다.
'코딩공부 > 점프 투 파이썬' 카테고리의 다른 글
## 점프 투 파이썬 - 정규 표현식 시작하기 ( 1 ) (0) | 2020.03.28 |
---|---|
## 점프 투 파이썬 - 정규 표현식 살펴보기 (0) | 2020.03.28 |
## 점프 투 파이썬 - 5장 연습문제 ( 2 ) (0) | 2020.03.22 |
## 점프 투 파이썬 - 5장 연습문제 ( 1 ) (0) | 2020.03.10 |
## 점프 투 파이썬 - 하위 디렉터리 검색하기 (0) | 2020.03.08 |