>  기사  >  백엔드 개발  >  PHP의 정규 표현식

PHP의 정규 표현식

不言
不言원래의
2018-05-09 11:49:301578검색

이 글은 주로 Php의 정규식을 소개하는데, 이는 특정 참조 가치가 있습니다. 이제 모든 사람과 공유합니다. 도움이 필요한 친구들이 참고할 수 있습니다.

정규식과 그 기능에 대한 간략한 소개

Ø 정규식의 이해 표현식

n 정규 표현식은 문자열 배열 패턴을 설명하는 사용자 정의 언어 규칙입니다.

n 문자열 처리 기능을 사용하여 작업을 완료할 수 있으면 정규 표현식을 사용하지 마세요.

n 몇 가지 복잡한 연산이 있습니다.

n 정규 표현식은 패턴 표현식이라고도 합니다.

n 정규 표현식은 특정 규칙이 있는 패턴을 사용하여 입력과 일치합니다. 문자열 정보는 비교, 분할, 검색, 대체 및 기타 가능 운영.

Ø 정규식의 특징

n 정규식도 문자열이다

n 특별한 의미를 지닌 문자열로 구성된 문자열

n 정규식 작성 규칙이 있고 문자열의 일종이기도 하다 패턴

n은 프로그래밍 언어로 볼 수 있습니다. 특수 문자를 사용하여 규칙에 따라 문자열을 작성하여 패턴을 형성합니다

참고: 정규식이 함수와 함께 사용되지 않는 경우 문자열입니다. 정규식을 함수에 사용하면 정규식의 실제 역할을 발휘할 수 있습니다.

Ø PHP는 두 세트의 정규식 함수 라이브러리를 제공합니다

Posix확장 정규식ereg_함수

perl 정규식으로 다음으로 시작하는 함수 preg_

사용을 권장합니다 prel 호환 정규식 함수 라이브러리

정규식 구문

Ø

정규 구분 기호

Ø

표현식의 일반 원자

Ø

정규 표현식의 메타문자

Ø

정규 표현식의 패턴 수정자

정규 구분 기호

정규 표현식 경계를 선언하는 데 사용되는 기호입니다.

정규식에 일반적으로 사용되는 경계 문자는 /입니다. 실제로 숫자가 아닌 문자와 백슬래시를 제외한 모든 문자 를 정규식 경계 문자로 사용할 수 있습니다.

참고: 완전한 정규 표현식에는 두 개의 경계 문자가 있습니다

n

하나는 문자열 유형의 따옴표 경계 문자입니다 ''

n

다른 하나는 정규 표현식의 경계 문자입니다 //( 일반적으로 /)

n을 사용합니다.

전체는 '//'

정규식 원자

정규식을 구성하는 가장 작은 단위는 원자

정규 영숫자입니다. 문자 그것들은 모두 원자이며, 보이지 않는 대부분의 문자도 원자입니다.

예: nrt...이 번역 문자는 요소입니다.

Ø 일반 원자

d 0-9

을 나타냅니다. 0-9 사이의 모든 문자는 0-9

S

사이의 모든 문자를 의미합니다.

w 대문자, 소문자, 숫자, 밑줄을 제외한 모든 문자를 나타냅니다.

W 대문자, 소문자, 숫자, 밑줄을 제외한 모든 문자를 나타냅니다.

메타 문자(ato m 수정자) 정규식 Ø

[] Atom list

은 지정된 문자에서 원자를 선택하는 것을 의미합니다. 예를 들어 :[5-9]

5를 의미합니다. 6 7 8 9 연속적인 문자는 : [

Start 문자 -LENDARACTIONS

] Ø [^] exclusion list

: [^4] 로 축약 될 수 있습니다.

4

을 제외한 모든 문자는 Ø 메타 문자(원자 수정자)를 사용하여 원자를 시뮬레이션할 수 있습니다.

d [0- 9]

                                                                          [a-zA-Z0-9]

W[ ^a-zA-Z0-9]Ø 원자 번호 수정자

? 는 이전 원자가 0

회 또는

1 나타남을 의미합니다.

+

는 이전 원자가

1회 이상 * 이전 원자가 0

회 이상

나타난다는 의미입니다.

Ø 원자 번호 수정 목록

n {m,n} 은 이전 원자가 최소 m번 나타나고 최대 n

n {m,}번 나타남을 의미합니다. 이전 원자 는 최소 n {m}

은 이전 원자

m회만 나타날 수 있음을 의미합니다. Ø 아날로그 수량 수정

?

{0,1}+

{1,}

*{0,}

Ø 경계 수정자 ^

는 지정된 문자로 시작하는 콘텐츠를 의미합니다

$ 는 지정된 문자로 끝나는 콘텐츠를 의미합니다

참고: ^ $

before One후 두 가지 정확한 수정 사이의 내용이 일치하는지 여부를 나타냅니다.

u ^$

을 사용하여 각 줄의 시작과 끝을 일치시키려면 시뮬레이션 수정자를 사용해야 합니다 m Ø | 수정자 선택

n

또는 Ø ()

모드 단위

n

우선순위 변경 n 다원자 변환 처리됨 원자로서 원자 번호 수정자

n

를 사용하여 메모리의 일치하는 괄호에 내용을 임시로 저장할 수 있습니다

n

단지 원자를 시뮬레이션하기 위해 ()

을 사용하는 경우 원자를 사용하세요. 숫자 수정자를 사용하면 ?를 사용할 수 있습니다. 괄호 시작 부분에 콘텐츠의 기능에 액세스하고 효율성을 향상시킵니다

n 함수의 도움으로 괄호의 콘텐츠를 역참조할 수 있습니다 Ø 메타 문자

.

(점)은 n

을 제외한 모든 문자 과 일치합니다.

정규식 에뮬레이션 수정자

Ø i 대소문자 무시

Ø x 정규식에서 공백 무시

Øs 를 사용하세요.( 메타 문자) 일치 n

Ø S속도 업 일치

Ø UModeChange Greedy Mode

욕심쟁이 모드 변경 . 프로그램은 기본적으로 일치 항목이 끝날 때까지 *?를 사용하여 비탐욕 모드

를 사용하여 정규식의 모든 문자를 일치시킬 수 있습니다. 이 시간 모드에서는 U를 사용한 후 프로그램이 비탐욕 모드로 변경됩니다. 이 프로그램이 현재 비 가비 모드 인 경우, U를 사용한 후 프로그램은 욕심 많은 표현식 기능

Ø

preg_grep () 입니다. 동일한 패턴을 반환합니다.

@param1과 일치하는 배열 셀: 정규식

@param2: 일치하는 배열

@param3: 선택적 매개 변수 기본값은 다음과 같습니다. 거짓. true로 설정하면 패턴 일치 반환 값: 배열 단위

Ø

preg_match() Perform a를 수행합니다. 정규 일치 질의에 적합한가요? @param1

: 정규식@param2

: 일치할 문자열@param 3

: 선택적 매개변수, 정규 표현식 과 일치하는 콘텐츠 반환 반환 값: 성공 시

1

반환, 실패 시 0 반환 1은 일치 횟수를 나타냅니다Ø

preg_match_all()Perform 정규 매칭 쿼리에 적합한 개수는 몇 개인지

@param1: 정규식

@param2: 일치할 문자열

@param3: 선택적 매개변수, 일치하는 문자열을 반환 정규식 콘텐츠

반환 값: 일치하는 수를 반환하고, 일치하는 대역이 없으면 0

Ø를 반환합니다. preg_split() 정규 표현식으로 문자열을 구분하세요

@param1: 정규식 수식

@param2분리할 문자열

@param3분리된 배열을 반환

Ø preg_replace() 정규식 실행 바꾸기

@param1 : 정규 표현식을 찾으려면

@param2 : 대체 할 내용

@param3 : 교체 작업 (배열 또는 문자열)을 수행 할 수 : 대체된 배열 또는 문자열을 반환합니다

관련 권장 사항:

php 정규 표현식

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

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