Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python의 정규식 예제

<시간/>

리터럴 문자

시니어 번호 예시 및 설명
1 파이썬
줄의 시작과 일치합니다.

캐릭터 클래스

시니어 번호 예시 및 설명
1 [Pp]파이썬
"파이썬" 또는 "파이썬" 일치
2 문지르다[예]
"루비" 또는 "루브" 일치
3 [아이오우]
하나의 소문자 모음과 일치
4 [0-9]
임의의 숫자와 일치합니다. [0123456789]와 동일
5 [a-z]
모든 소문자 ASCII 문자와 일치
6 [A-Z]
모든 대문자 ASCII 문자와 일치
7 [a-zA-Z0-9]
위의 항목 중 하나와 일치
8 [^aeiou]
소문자 모음이 아닌 다른 것과 일치
9 [^0-9]
숫자가 아닌 다른 것과 일치

특수 문자 클래스

시니어 번호 예시 및 설명
1 .
개행 문자를 제외한 모든 문자 일치
2 \d
숫자 일치:[0-9]
3 \D
숫자가 아닌 일치:[^0-9]
4 \s
공백 문자 일치:[ \t\r\n\f]
5 \S
공백이 아닌 일치:[^ \t\r\n\f]
6 \w
단일 단어 문자 일치:[A-Za-z0-9_]
7 \W
비단어 문자 일치:[^A-Za-z0-9_]

반복 사례

시니어 번호 예시 및 설명
1 루비?
"rub" 또는 "ruby" 일치:y는 선택 사항입니다.
2 루비*
"rub"에 0 이상 y를 더한 일치
3 루비+
"rub"에 1개 이상의 y를 더한 일치
4 \d{3}
정확히 3자리 일치
5 \d{3,}
3자리 이상 일치
6 \d{3,5}
3, 4 또는 5자리 숫자 일치

욕심 없는 반복

이것은 가장 작은 반복 횟수와 일치합니다 -

시니어 번호 예시 및 설명
1 <.*>
욕심 많은 반복:"perl>"과 일치
2 <.*?>
Nongreedy:"perl>"의 ""과 일치

괄호로 그룹화

시니어 번호 예시 및 설명
1 \D\d+
그룹 없음:+ 반복 \d
2 (\D\d)+
그룹화됨:+ \D\d 쌍 반복
3 ([Pp]파이썬(, )?)+
"Python", "Python, python, python" 등을 찾습니다.

역참조

이것은 이전에 일치했던 그룹과 다시 일치합니다 -

시니어 번호 예시 및 설명
1 ([Pp])ython&\1ails
python&pails 또는 Python&pails 일치
2 (['"])[^\1]*\1
작은따옴표 또는 큰따옴표 문자열입니다. \1은 첫 번째 그룹이 일치하는 것과 일치합니다. \2는 두 번째 그룹이 일치하는 것과 일치합니다.

대안

시니어 번호 예시 및 설명
1 파이썬|펄
"파이썬" 또는 "펄"과 일치
2 문지르다(y|le))
"루비" 또는 "루블" 일치
3 파이썬(!+|\?)
"Python" 다음에 하나 이상의 ! 또는 하나?

앵커

일치 위치를 지정해야 합니다.

시니어 번호 예시 및 설명
1 ^파이썬
문자열 또는 내부 줄의 시작 부분에서 "Python"을 찾습니다.
2 파이썬$
문자열이나 줄의 끝에서 "Python"을 찾습니다.
3 \APython
문자열 시작 부분에서 "Python" 일치
4 파이썬\Z
문자열 끝에 "Python" 일치
5 \b파이썬\b
단어 경계에서 "Python" 일치
6 \brub\B
\B는 비단어 경계:"rub"과 "ruby"에서 "rub"을 일치하지만 단독으로는 아님
7 파이썬(?=!)
느낌표가 뒤에 오는 경우 "Python"을 찾습니다.
8 파이썬(?!!)
느낌표가 뒤에 오지 않으면 "Python"을 찾습니다.