>백엔드 개발 >파이썬 튜토리얼 >Python 정규식에 대한 자세한 설명

Python 정규식에 대한 자세한 설명

silencement
silencement원래의
2019-06-05 11:03:384126검색

Python 정규식에 대한 자세한 설명

정규식의 개념

정규식은 문자열 연산을 위한 논리적 공식입니다. 미리 정의된 특정 문자와 이러한 특정 문자의 조합을 사용하여 "규칙 문자열"을 형성합니다. 이 "규칙 문자열"은 문자열에 대한 필터링 논리를 표현하는 데 사용됩니다.

정규식의 문법 규칙

정규식의 대략적인 일치 과정은 다음과 같습니다.

#🎜🎜 # 1. 표현식을 꺼내서 텍스트의 문자

2와 차례로 비교합니다. 모든 문자가 일치할 수 있으면 일치에 실패한 문자가 있으면 일치가 성공합니다. 실패할 것이다.

3. 표현에 수량자나 경계가 있으면 과정이 약간 달라집니다.

다음은 Python의 정규 표현식에 대한 일부 일치 규칙입니다

#🎜🎜 #문자열의 시작 부분과 일치 #🎜🎜 ## ## ## ## ## ## ## ## ## ######$### ## ## ## ## 🎜🎜####### # 🎜 🎜#(n) # 🎜 🎜##🎜 🎜# # 🎜🎜#대괄호 안에 i, m 또는 x 선택적 플래그 사용 (?-imx: re)#🎜 🎜#Note.(?=re)# 🎜🎜## 🎜🎜#

모드

설명

문자열의 끝과 일치합니다.

.# 🎜🎜#

은 개행을 제외하고 일치합니다. #🎜 🎜 무엇이든 #

문자, re.DOTALL 마크가 지정된 경우 다음은 가능합니다. 개행 문자를 포함한 모든 문자와 일치합니다. [. ..]

은 별도로 나열된 문자 그룹을 나타내는 데 사용됩니다. [amk] 'a', 'm' 또는 'k' 일치 #[^...]

#🎜🎜 #[]에 없는 문자: [^abc] a, b, c 이외의 문자와 일치합니다.

re*

0개 이상의 표현식과 일치합니다.

re+# 🎜🎜#

1개 이상의 표현식과 일치합니다.

re?

탐욕스럽지 않은 방식으로 선행 정규 표현식으로 정의된 0 또는 1개의 조각과 일치 #🎜🎜 ##🎜 🎜#

re{n}

# 🎜🎜# ### ########## ## ## ## ## ## ## ## ## ############## n,}

n개의 이전 표현식과 정확히 일치합니다.

re{n, m}

이전 정규 표현식에서 정의한 조각의 n~m 배를 탐욕스러운 방식으로 일치시킵니다.

# 🎜 🎜#

a|b

은 a 또는 b와 일치합니다

(re)

G 일치 괄호 The inside의 표현식은 그룹을 나타냅니다.

정규식에는 i, m 또는 x의 세 가지 선택적 플래그가 포함됩니다. 괄호 안의 영역에만 영향을 미칩니다.

(?-imx)# 🎜🎜#

i, m 또는 x 선택적 플래그를 끄는 정규 표현식입니다. 괄호 안의 영역에만 영향을 미칩니다.

(?: re)# 🎜🎜#

은 (...)와 유사하지만 그룹을 나타내지는 않습니다 #🎜🎜 #

(?imx: re)

#🎜🎜 #

#🎜🎜 #

#🎜 🎜 # 괄호 안에 i, m 또는 x 선택적 플래그를 사용하지 마세요. #

(?#...)

앞으로 양수 구분 기호. ... 로 표시된 포함된 정규식이 현재 위치와 성공적으로 일치하면 성공하고, 그렇지 않으면 실패합니다. 그러나 포함된 표현식을 시도한 후에는 일치 엔진이 전혀 개선되지 않으며 패턴의 나머지 부분은 여전히 ​​구분 기호의 오른쪽을 시도해야 합니다.

(?! 재)

앞으로 음수 구분 기호. 양수 구분 기호의 반대입니다. 포함된 표현식이 문자열의 현재 위치에서 일치할 수 없으면 성공합니다.

독립 모드를 일치시켜 역추적의 필요성을 제거합니다.

w

은 '[A-Za-z0-9_]'에 해당하는 문자, 숫자 및 밑줄과 일치합니다.

W

은 '[^A-Za-z0-9_]'에 해당하는 영숫자가 아닌 숫자 및 밑줄과 일치합니다.

s

은 공백 문자와 일치하며 [tnrf].

S

경기 비어 있지 않은 문자. [^ fnrtv]와 동일합니다.

d

은 [0-9].

D

숫자가 아닌 모든 것과 일치합니다. [^0-9]와 같습니다.

A

문자열 시작

Z

문자열의 끝이 있는 경우 일치합니다. 개행, 개행 앞의 끝 문자열에만 일치합니다. ㄷ

z

문자열의 끝과 일치

G

마지막 경기가 완료된 위치를 일치시키세요 .

b

은 단어와 공백 사이의 위치를 ​​의미하는 단어 경계와 일치합니다. 예를 들어, 'erb'는 "never"의 'er'와 일치하지만 "동사"의 "er"는 일치하지 않습니다.

B

단어가 아닌 경계와 일치합니다. 'erB'는 "동사"의 'er'와 일치하지만 "never"에서는 일치하지 않습니다.

n, t 등

은 개행 문자와 일치합니다. 탭 문자와 일치합니다. 잠깐

1...9

n번째 그룹의 내용과 일치하세요.

10

은 n번째 그룹의 내용과 일치하면 일치합니다. 그렇지 않으면 8진 문자 코드의 표현을 참조합니다.

위 내용은 Python 정규식에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.