티스토리 뷰
정규표현식 (Regular Expression)
복잡한 문자열을 처리할 때 사용하는 방법
(python 만의 문법이 아니라 문자열을 처리하는 모든 곳에서 사용됨)
표현식 | 의미 | |
^x | 시작 | |
x$ | 끝 | |
x+ | (1회 이상) 반복된다 | |
x? | 1회 or 0회 | |
x{n} | n번 반복 | |
x{n, m} | n~m 번 반복 | |
x{n, } | n번 이상 반복 | |
[a-c] | a~c 까지의 문자 |
파이썬(python)에서 정규표현식 활용하기
파이썬에서 기본 제공하는 re 모듈 활용
import re
reg = "^[a-z]{3}[0-9]{3}$" # 정규표현식
str = input("확인할 문자열 : ")
re.match(reg, str) # 문자열이 정규식과 일치하는지 확인 => 일치하면 str, 불일치하면 none
re. search(reg, str) # 문자열에 정규식과 매치되는 부분이 있는지 확인
EX 1 - 주민등록번호
1. input : 주민등록번호를 입력받는다.
2. re : 입력받은 문자열이 '주민등록번호 형식'인지 확인한다.
3. if : 뒷자리 첫번호가 3, 4일 때, 앞자리 첫번호가 0~2인지 확인한다.
4. while : 옳지 않은 형식을 입력했을 경우 "틀렸음"을 알려주고, 다시 입력하게 한다.
import re
reg = "^[0-9]{2}[0-1][0-9][0-3][0-9]-?[1-4][0-9]{6}$"
keep = True
while keep :
user_input = input("주민등록번호 입력 : ")
if bool(re.match(reg, user_input):
'AI School : 파이썬, 데이터분석 > 정리노트' 카테고리의 다른 글
[Python] 5. 모듈, 패키지 (0) | 2023.01.06 |
---|---|
[Python] 4. 클래스 (0) | 2023.01.05 |
[Python] 3. 함수 (0) | 2023.01.04 |
[Python] 2. 연산자, 조건문, 반복문 (0) | 2023.01.03 |
[Python] 1. 변수, 데이터타입 (0) | 2023.01.02 |