라이브러리

[PHP] preg_match_all - 글로벌 정규 표현식 일치 수행




preg_match_all 소개


PHP의 `preg_match_all` 함수는 정규표현식을 사용하여 문자열 내의 모든 패턴을 찾는 함수입니다. 정규표현식은 특정 문자열을 표현하는 언어로, 문자열 내의 패턴을 찾기 위해 사용됩니다.

preg_match_all 사용법


`preg_match_all` 함수의 사용법은 다음과 같습니다.

#hostingforum.kr
php

preg_match_all(pattern, string, matches, flags, offset)



* `pattern`: 정규표현식
* `string`: 검색할 문자열
* `matches`: 매칭된 패턴을 저장할 배열
* `flags`: 옵션(선택)
* `offset`: 시작 위치(선택)

예제


다음 예제는 `preg_match_all` 함수를 사용하여 문자열 내의 모든 단어를 찾는 방법을 보여줍니다.

#hostingforum.kr
php

$string = "Hello world, this is a test string.";

$pattern = "w+";



preg_match_all($pattern, $string, $matches);



print_r($matches[0]);



이 예제에서는 `w+` 정규표현식을 사용하여 문자열 내의 모든 단어를 찾습니다. `w`는 알파벳, 숫자, 언더스코어를 의미하며 `+`는 하나 이상의 문자를 의미합니다.

출력 결과는 다음과 같습니다.

#hostingforum.kr
php

Array

(

    [0] => Hello

    [1] => world

    [2] => this

    [3] => is

    [4] => a

    [5] => test

    [6] => string

)



정규표현식 패턴


다음은 정규표현식 패턴의 예입니다.

* `w`: 알파벳, 숫자, 언더스코어
* `d`: 숫자
* `s`: 공백
* `D`: 숫자가 아닌 문자
* `S`: 공백이 아닌 문자
* `.`: 임의의 문자
* `^`: 문자열의 시작
* `$`: 문자열의 끝
* `[abc]`: a, b, c 중 하나의 문자
* `[a-zA-Z]`: 알파벳 중 하나의 문자
* `[^abc]`: a, b, c가 아닌 문자
* `a*`: a가 0개 이상의 문자
* `a+`: a가 1개 이상의 문자
* `a?`: a가 0개 또는 1개의 문자
* `a{3}`: a가 3개의 문자

옵션


`preg_match_all` 함수의 옵션은 다음과 같습니다.

* `PREG_OFFSET_CAPTURE`: 매칭된 패턴의 시작 위치를 포함하는 배열을 반환합니다.
* `PREG_PATTERN_ORDER`: 패턴이 일치하는 순서대로 배열을 반환합니다.
* `PREG_SET_ORDER`: 패턴이 일치하는 순서와 상관없이 배열을 반환합니다.

참고


* `preg_match_all` 함수는 문자열 내의 모든 패턴을 찾는 함수입니다.
* 정규표현식은 특정 문자열을 표현하는 언어로, 문자열 내의 패턴을 찾기 위해 사용됩니다.
* `preg_match_all` 함수의 옵션은 다음과 같습니다.
* `PREG_OFFSET_CAPTURE`: 매칭된 패턴의 시작 위치를 포함하는 배열을 반환합니다.
* `PREG_PATTERN_ORDER`: 패턴이 일치하는 순서대로 배열을 반환합니다.
* `PREG_SET_ORDER`: 패턴이 일치하는 순서와 상관없이 배열을 반환합니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 315 페이지

검색

게시물 검색