PHP 정규 표현 식 완전 튜 토리 얼 향상 편

5866 단어 php정규 표현 식
이전 글 은 phop 정규 표현 식 안전 튜 토리 얼 의 기초 편 을 공 유 했 습 니 다.본 고 는 phop 정규 표현 식 에 관 한 지식 을 계속 연장 할 것 입 니 다.구체 적 인 내용 은 다음 글 을 보 세 요.
php 정규 표현 식 의 각종 조작 부호 의 연산 우선 순위
같은 우선 순위 의 왼쪽 에서 오른쪽으로 연산 을 하고,서로 다른 우선 순위 의 연산 은 먼저 높 고 나중에 낮다.각종 조작 부호 의 우선 순 위 는 아래 와 같이 높다.
연산 자 설명
전의 부
(), (?:), (?=), [] 괄호
*, +, ?, {n},{n,},{n,m}한정 부호
↑,$,anymetacharacter 위치 와 순서
|"또는"조작
php 정규 표현 식 의 모든 기호 해석.
문자 설명
다음 문 자 를 특수 문자 나 원래 의 문자,또는 뒤로 인용 하거나 8 진 전의 문자 로 표시 합 니 다.
예 를 들 어'n'일치 문자'n'.n.줄 바 꿈 문자 와 일치 합 니 다.시퀀스'는'일치'하고'('는'일치'(')입 니 다.
^입력 문자열 의 시작 위치 와 일치 합 니 다.RegExp 대상 의 Multiline 속성 을 설정 하면^'n'또는'r'다음 위치 와 도 일치 합 니 다.
$입력 문자열 의 끝 위치 와 일치 합 니 다.RegExp 대상 의 Multiline 속성 을 설정 하면$도'n'또는'r'이전 위치 와 일치 합 니 다.
*앞의 하위 표현 식 과 0 번 또는 여러 번 일치 합 니 다.예 를 들 어 zo*는'z'와'zoo'와 일치 할 수 있 습 니 다.*등가{0,}.
+앞의 하위 표현 식 과 한 번 또는 여러 번 일치 합 니 다.예 를 들 어'zo+'는'zo'와'zoo'와 일치 하지만'z'와 일치 하지 않 습 니 다.+등가{1,}.
? 앞의 하위 표현 식 과 0 번 또는 한 번 일치 합 니 다.예 를 들 어'도(es)?'"do"또는"does"의"do"와 일치 할 수 있 습 니 다.?등가{0,1}.
{n}n 은 부정 정수 입 니 다.정확 한 n 회 일치 합 니 다.예 를 들 어'o{2}'는'Bob'의'o'와 일치 할 수 없 지만'food'의 두 o 와 일치 할 수 있 습 니 다.
{n,}n 은 부정 정수 입 니 다.최소 n 회 일치 합 니 다.예 를 들 어'o{2,}'는'Bob'의'o'와 일치 할 수 없 지만'fooood'의 모든 o 와 일치 할 수 있 습 니 다.o{1,}'는'o+'와 같 습 니 다.o{0,}은'o*'와 같 습 니 다.
{n,m}m 와 n 은 모두 마이너스 정수 이 며,그 중 n<=m 이다.최소 n 회 일치 하고 최대 m 회 일치 합 니 다.예 를 들 어'o{1,3}'은'foooood'의 세 번 째 o 와 일치 합 니 다.o{0,1}'는'o?'와 같 습 니 다.쉼표 와 두 숫자 사이 에 빈 칸 이 있어 서 는 안 된다 는 것 을 주의 하 세 요.
? 이 문자 가 다른 제한 문자(*,+,?,{n},{n,},{n,m}뒤에 있 을 때 일치 하 는 패턴 은 탐 욕 스 럽 지 않 습 니 다.탐욕 모드 가 아 닌 검색 한 문자열 은 가능 한 한 적 게 일치 하고 기본 탐욕 모드 는 검색 한 문자열 과 가능 한 한 많이 일치 합 니 다.예 를 들 어 문자열'oooo','o+?'하나의'o'와 일치 하고'o+'는 모든'o'와 일치 합 니 다.
"n"을 제외 한 모든 문자 와 일치 합 니 다.'n'을 포함 한 모든 문자 와 일치 하려 면'[n]'과 같은 모드 를 사용 하 십시오.
(pattern)pattern 과 일치 하 며 이 일치 하 는 것 을 가 져 옵 니 다.가 져 온 매 칭 은 생 성 된 Matches 집합 에서 얻 을 수 있 으 며,VBScript 에 서 는 SubMatches 집합 을 사용 하고,JScript 에 서 는$0...$9 속성 을 사용 합 니 다.괄호 문자 와 일치 하려 면'('또는')'를 사용 하 십시오.
(?:pattern)pattern 과 일치 하지만 일치 하 는 결 과 를 얻 지 못 합 니 다.즉,이것 은 일치 하지 않 고 나중에 사용 할 수 있 도록 저장 하지 않 습 니 다.이것 은'또는'문자(|)를 사용 하여 하나의 모델 의 각 부분 을 조합 하 는 데 매우 유용 하 다.예 를 들 어'industr(?:y|ies)는'industry|industries'보다 더 간략 한 표현 식 입 니 다.
(?=pattern)pattern 과 일치 하 는 모든 문자열 의 시작 부분 에서 검색 문자열 과 일치 하 는 것 을 미리 찾 고 있 습 니 다.이것 은 비 획득 일치 입 니 다.즉,이 매 칭 은 나중에 사용 할 필요 가 없습니다.예 를 들 어'Windows(?=95|98|NT|2000)'Windows 2000'의'Windows'와 일치 하지만'Windows 3.1'의'Windows'와 일치 할 수 없습니다.사전 검 사 는 문 자 를 소모 하지 않 습 니 다.즉,일치 가 발생 한 후 마지막 일치 후 바로 다음 일치 하 는 검색 을 시작 합 니 다.사전 검 사 를 포함 한 문자 가 아 닌 다음 검색 을 시작 합 니 다.
(?!pattern)역방향 예비 검 사 는 pattern 과 일치 하지 않 는 문자열 의 시작 부분 에서 검색 문자열 과 일치 합 니 다.이것 은 비 획득 일치 입 니 다.즉,이 매 칭 은 나중에 사용 할 필요 가 없습니다.예 를 들 어'Windows(?!95|98|NT|2000)'Windows 3.1'의'Windows'와 일치 하지만'Windows 2000'의'Windows'와 일치 할 수 없습니다.사전 검 사 는 문 자 를 소모 하지 않 습 니 다.즉,일치 가 발생 한 후 마지막 일치 후 바로 다음 일치 하 는 검색 을 시작 합 니 다.사전 검 사 를 포함 한 문자 가 아 닌 다음 검색 을 시작 합 니 다.
x|y 는 x 또는 y 와 일치 합 니 다.예 를 들 어'z|food'는'z'나'food'와 일치 합 니 다.(z|f)ood 는"zood"또는"food"와 일치 합 니 다.
[xyz]문자 집합.포 함 된 임의의 문자 와 일치 합 니 다.예 를 들 어'[abc]'는'plain'의'a'와 일치 할 수 있 습 니 다.
[^xyz]마이너스 문자 집합.포함 되 지 않 은 임의의 문자 와 일치 합 니 다.예 를 들 어'[^abc]'는'plain'의'p'와 일치 할 수 있 습 니 다.
[a-z]문자 범위.지정 한 범위 내의 임의의 문자 와 일치 합 니 다.예 를 들 어'[a-z'는'a'에서'z'범위 내의 임의의 소문 자 문자 와 일치 할 수 있다.
[^a-z]마이너스 문자 범위.지정 한 범위 내 에 있 지 않 은 임의의 문자 와 일치 합 니 다.예 를 들 어'[^a-z]'는'a'에서'z'범위 내 에 있 지 않 은 임의의 문자 와 일치 할 수 있 습 니 다.
b.단어 경계 와 일치 합 니 다.즉,단어 와 빈 칸 의 위 치 를 말 합 니 다.예 를 들 어'erb'는'never'의'er'와 일치 할 수 있 지만'verb'의'er'와 일치 할 수 없습니다.
B 는 단어 가 아 닌 경계 와 일치 합 니 다.erb'는'verb'의'er'와 일치 하지만'never'의'er'와 일치 할 수 없습니다.
cx 는 x 가 가리 키 는 제어 문자 와 일치 합 니 다.예 를 들 어 cM 은 control-M 또는 리 턴 문자 와 일치 합 니 다.x 의 값 은 A-Z 또는 a-z 중 하나 여야 합 니 다.그렇지 않 으 면 c 를 원래 의'c'문자 로 간주 합 니 다.
d.숫자 문자 와 일치 합 니 다.등가
D 는 비 숫자 문자 와 일치 합 니 다.등가
f.페이지 바 꾸 기 문자 와 일치 합 니 다.x0c 와 cL 에 등가 하 다.
줄 바 꿈 문자x0a 와 cJ 에 등가 하 다.
r.리 턴 문자 와 일치 합 니 다.x0d 와 cM 에 등가 하 다.
s 는 빈 칸,탭 문자,페이지 바 꾸 기 등 모든 공백 문자 와 일치 합 니 다.등가
S 는 공백 문자 가 아 닌 모든 문자 와 일치 합 니 다.등가
t.탭 문자 와 일치 합 니 다.등가 x09 와 cI.
v.수직 탭 문자 와 일치 합 니 다.x0b 와 cK 와 같다.
w 는 밑줄 친 모든 단어 문자 와 일치 합 니 다.'[A-Za-z0-9]'와 같다.
W 는 단어 가 아 닌 모든 문자 와 일치 합 니 다.'[^A-Za-z0-9]'와 같 습 니 다.
xn 은 n 과 일치 하 며,그 중 n 은 16 진법 전의 값 입 니 다.16 진법 전의 값 은 반드시 확 정 된 두 개의 숫자 가 길 어야 한다.예 를 들 어'x41'은'A'와 일치 합 니 다.x041'은'x04'&'1'과 같다.정규 표현 식 에서 ASCII 인 코딩 을 사용 할 수 있 습 니 다.
num 은 num 과 일치 합 니 다.그 중에서 num 은 정수 입 니 다.가 져 온 일치 하 는 참조 입 니 다.예 를 들 어'(.)1'은 두 개의 연속 적 인 같은 문자 와 일치 합 니 다.
n 표 지 는 8 진 전의 값 이나 뒤로 참조 합 니 다.n 이전에 최소한 n 개 이상 가 져 온 하위 표현 식 이 라면 n 은 뒤로 참조 합 니 다.그렇지 않 으 면 n 이 8 진 숫자(0-7)라면 n 은 8 진 전의 값 입 니 다.
nm 표 지 는 8 진 전의 값 이나 뒤로 참조 합 니 다.nm 이전에 최소한 nm 가 하위 표현 식 을 얻 었 다 면 nm 는 뒤로 참조 합 니 다.nm 이전에 적어도 n 개 를 가 져 오 면 n 은 뒷 굽 문자 m 의 뒤로 참조 합 니 다.앞의 조건 이 모두 만족 하지 않 으 면 n 과 m 가 모두 8 진법 숫자(0-7)라면 nm 는 8 진법 전의 값 nm 와 일치 합 니 다.
nml n 이 8 진 숫자(0-3)이 고 m 와 l 이 모두 8 진 숫자(0-7)라면 8 진 전의 값 nml 와 일치 합 니 다.
un 은 n 과 일치 합 니 다.그 중에서 n 은 16 진수 로 표 시 된 유 니 코드 문자 입 니 다.예 를 들 어 u00A 9 는 저작권 기호(?)와 일치 합 니 다.
이상 의 내용 은 바로 여러분 께 소개 해 드 리 는 PHP 정규 표현 식 의 완전한 튜 토리 얼 향상 편 입 니 다.여러분 께 서 좋아해 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기