728x90

정규식은 흔히 웹사이트같은경우 kangcine@naver.com 과 같은 형태로 이메일을 만들어야합니다.
이러한 경우가 아니면 다시 입력받을수 있도록 만들어주는 것을 말하는데요.
이메일 말고도 최근에는 안전한 비밀번호를 위해 비밀번호에도 사용됩니다.
(10자이상, 영문과 숫자가 섞인 비밀번호)
Regular Expression
. : 문자 1개
^ : 문자열의 시작
$ : 문자열의 마지막
[] : 문자 집합
| : or
() : 괄호 안의 정규식 그룹
* : 0 or more
+ : 1 or more
? : 0 or 1
{n}: n번 반복
{n, m} : n번 부터 m번
{n, } : n번 부터 무한
r 문자열 표기법(re 모듈 확장 문법)
\w : [a-zA-Z0-9_] -> a~Z, 0~9, _ 포함하는 모든 문자
\W : [^a~zA-Z0-9_] -> 위의 문자 제외한 나머지문자
\d : [0~9] -> 0~9까지 모든 숫자
\D : [^0-9] -> 숫자를 제외한 나머지 문자
\s : [\t\n\r\f\v] -> 공백문
\S : [^\t\n\r\f\v] -> 공백을 제외한 모든 문자
\b : 단어의 시작과 끝의 빈 공백
\B : 단어의 시작과 끝이 아닌 빈 공백
\\ : \
\[숫자] : 지정된 숫자만큼 일치하는 문자열
\A : 문자열의 시작
\Z : 문자열의
import re
str01 = '나의 이메일은 kh.123@kh.com123 입니다.'
match = re.search(r'[\w]*@[a-zA-Z.]*', str01)
print(match.group())

str01의 문자열을 정규화로 인해 해당 문자만 출력이 되었습니다.
파이썬에서는 정규식을 사용하기 위해 import re를 사용합니다.
728x90
'Python > Python' 카테고리의 다른 글
[Python] 제어문 - if문 (0) | 2022.05.05 |
---|---|
[Python] split, join (0) | 2022.05.04 |
[Python] operator(연산자) (0) | 2022.05.02 |
[Python] built in(형변환) (0) | 2022.05.01 |
[Python] dictionary(딕셔너리) (0) | 2022.04.30 |