오늘은 정규표현식 공부한 부분 복습을 위해 포스팅을 해보려고 합니다!
regex
패턴re(regular expression)
모듈을 통해 사용 가능
import re
로 모듈을 불러온다!
이 외에도 여러 메서드가 있지만 간단하게 필요한 부분만 정리했습니다😺
[
, ]
는 [
, ]
로 둘러쌓인 문자 클래스를 지정하는데 사용
'[가-힣-_.?]+'
- 한글이나-
,_
,.
,?
가 1개 이상 있는지 확인
^
는 [
, ]
안의 첫 번째 문자로 들어가게 되면 안에 있는 부분을 제외한 모든 부분과 일치
아닐 경우는 가장 처음 부분에 있는지 확인
'[^0-9]+'
-0~9
를 제외한 문자가 1개 이상 있는지 확인
'^http'
- 문자열의 가장 처음에'http'
가 있는지 확인
$
는 문자열의 끝 부분에 일치하는지 확인
'}$'
-}
가 마지막에 위치하는지 확인
*
는 문자열이 0번 이상 일치하는지 확인 (있어도 되고 없어도 되나 다른게 있으면 안됨)
'[0-9]*'
- 숫자가 0번 이상 일치하는지 확인
+
는 문자열이 1번 이상 일치하는지 확인
'[a-zA-Z]+'
- 영어 대소문자가 1번 이상 일치하는지 확인
?
는 앞의 문자열이 0번이나 1번 일치하는지 확인
'https?'
-http
이거나https
인지 확인
{m, n}
는 최소 m
번 반복, 최대 n
번 반복인지 확인 (m
이나 n
은 생략가능)
[a-z]{3}
- 영어 소문자가 3번 반복되는지 확인
\
는 다른 메타 문자들을 패턴으로 인식시키거나 특수 시퀀스 사용 가능
특수 시퀀스 기능 \d
모든 숫자와 일치 \D
모든 숫자가 아닌 문자와 일치 \s
모든 공백 문자와 일치 [ \t\n\r\f\v]
\S
공백 문자가 아닌 모든 문자와 일치 \w
모든 영어, 숫자 그리고 _
와 일치\W
영어, 숫자 그리고 _
를 제외한 모든 문자 일치
|
는 or
연산자
W|B
는W
이거나B
이면 일치
(
, )
는 그룹. 내부에 포함된 표현식을 묶어주는 역할
(?P<name>정규표현식)
으로 그룹에 이름을 지정할 수 있어서 지정한 이름 호출도 가능
(python)+
-python
이 1번 이상 반복되는지 확인
.
은 아무 문자가 그 자리에 있는지 확인
ab.d
-.
자리에 문자가 들어가는지 확인
너무나도 많은 변형들이 있어서 일단 기본부터 탄탄히 해 보기로 했습니다!
추가로 더 공부 필요한 부분들 : sub()
, raw 문자열
등등 . . .