파이썬 정규식으로 주민등록번호 추출
https://link.coupang.com/a/cgDYI0
Do it! 점프 투 파이썬 - 프로그래밍 언어 | 쿠팡
현재 별점 4.7점, 리뷰 107개를 가진 Do it! 점프 투 파이썬! 지금 쿠팡에서 더 저렴하고 다양한 프로그래밍 언어 제품들을 확인해보세요.
www.coupang.com
파이썬 정규식: 문자열의 마법사를 만나다
안녕하세요, 여러분!
오늘은 파이썬 프로그래밍의 숨은 영웅,
'정규식'에 대해 이야기해보려고 합니다.
정규식이 뭐냐고요?
간단히 말해, 문자열을 다루는 마법 같은 도구예요!
정규식, 왜 필요할까?
여러분, 이런 경험 있으신가요?
엑셀 파일에서 특정 형식의 데이터만 골라내야 하는데,
일일이 눈으로 확인하다가 지친 경험?
또는 긴 문서에서 이메일 주소만 쏙쏙 뽑아내고 싶었던 적?
바로 이럴 때 정규식이 빛을 발합니다!
정규식의 기본, 쉽게 이해하기
정규식은 특별한 '패턴 언어'예요.
마치 보물찾기 지도와 같죠.
이 지도만 있으면 어떤 문자열 속에서도 원하는 '보물'(정보)를 찾아낼 수 있어요.

실제로 써보기: 이메일 찾기
자, 이제 간단한 마법을 부려볼까요? 긴 문장에서 이메일 주소를 찾아내는 주문을 외워봐요.
import re
text = "연락처는 magic@python.com 또는 wizard@coding.net입니다."
pattern = r'\b[\w.-]+@[\w.-]+\.\w+\b'
emails = re.findall(pattern, text)
print(f"찾은 이메일: {emails}")
이 주문을 외우면, ['magic@python.com', 'wizard@coding.net']이라는 결과가 나와요. 놀랍지 않나요?
실제로 써보기: 주민등록번호 추출하기
파이썬의 re 모듈을 사용하여 주민등록번호를 추출하는 코드를 작성해드리겠습니다.
import re
text = "홍길동 740302-2985103 전화번호 010-7777-6666"
pattern = r'\d{6}-\d{7}'
match = re.search(pattern, text)
if match:
jumin = match.group()
print(f"추출된 주민등록번호: {jumin}")
else:
print("주민등록번호를 찾을 수 없습니다.")
이 코드는 다음과 같이 작동합니다:
- re 모듈을 임포트합니다.
- 정규표현식 패턴 r'\d{6}-\d{7}'을 사용합니다. 이 패턴은 6개의 숫자, 하이픈, 그리고 7개의 숫자로 구성된 주민등록번호 형식을 찾습니다.
- re.search() 함수를 사용하여 텍스트에서 패턴과 일치하는 첫 번째 부분을 찾습니다.
- 일치하는 부분이 있으면 match.group()을 사용하여 추출하고 출력합니다.
이 코드를 실행하면 "추출된 주민등록번호: 740302-2985103"이 출력됩니다.
이 방법은 주어진 텍스트에서 주민등록번호 형식과 일치하는 첫 번째 문자열을 찾아 추출합니다
정규식, 어렵지 않아요!
처음에는 정규식이 외계어처럼 보일 수 있어요.
하지만 조금씩 익히다 보면, 문자열을 다루는 여러분만의 마법 지팡이가 될 거예요.
정규식으로 할 수 있는 일들은 정말 많답니다:
- 전화번호 형식 확인하기
- 웹사이트에서 특정 정보 추출하기
- 문서에서 특정 패턴의 텍스트 찾아 바꾸기
마치며
정규식은 처음에는 어려워 보이지만, 익숙해지면 정말 강력한 도구가 됩니다.
마치 해리 포터가 마법을 배우는 것처럼,
여러분도 조금씩 연습하다 보면 어느새 문자열을 자유자재로 다루는 마법사가 되어 있을 거예요!
다음에는 더 재미있는 정규식 마법을 소개해드릴게요.
그때까지 정규식의 기본을 익혀보는 건 어떨까요?
여러분의 코딩 여정에 행운이 함께하기를!