[python] 정규표현식을 이용한 주민등록번호 형식인 문자열 추출하기
주민등록번호는 국민의 개인 식별을 위해 사용되는 중요한 정보입니다. 주민등록번호는 다음과 같은 형식을 갖습니다: “YYMMDD-XXXXXXX” 또는 “YYMMDDXXXXXXX”.
Python의 정규표현식 모듈인 re
를 사용하여 문자열에서 주민등록번호 형식을 가진 부분을 추출할 수 있습니다. 아래는 정규표현식을 사용하여 주민등록번호 형식인 문자열을 추출하는 예제 코드입니다.
import re
def extract_jumin(text):
pattern = r'\b\d{6}[-]?\d{7}\b'
matches = re.findall(pattern, text)
return matches
# 예시 문자열
text = "주민등록번호는 930209-1234567과 9710151234567이 있습니다."
jumin_list = extract_jumin(text)
for jumin in jumin_list:
print(jumin)
위의 코드에서는 extract_jumin
함수를 정의하고, 입력된 문자열에서 주민등록번호 형식을 찾아 추출합니다. 주민등록번호 형식으로 판별되는 문자열을 리스트 형태로 반환합니다.
위의 예제 코드를 실행하면 다음과 같은 결과를 얻을 수 있습니다:
930209-1234567
9710151234567
정규표현식 r'\b\d{6}[-]?\d{7}\b'
은 다음과 같은 요소로 구성되어 있습니다:
\b
: 단어의 경계를 나타냅니다.\d{6}
: 6개의 숫자를 의미합니다.[-]?
: 하이픈(“-“) 문자가 있을 수도 없을 수도 있습니다.\d{7}
: 7개의 숫자를 의미합니다.
이 정규표현식은 주민등록번호 형식인 문자열을 추출하는 데 효과적으로 사용될 수 있습니다.
참고 문헌:
- Python 정규표현식 문서: https://docs.python.org/3/library/re.html