PHP 정규표현식

(2017-11-11)
1. PHP 정규표현식정규표현식 참조

  ㅇ 지원 종류
     -  Perl 호환의 정규표현식 지원 (PCRE)
     -  멀티바이트 mbstring 정규표현식 지원
     -  POSIX 확장 형식 지원 (쓰기 쉬우나, 기능 빈약,취약성 때문에 5.3 버전 이후 지원 중단)

  ㅇ 정규 표현식은 반드시 슬래시(/)로 감싸짐

  ㅇ 패턴 기호
     - 단일 문자 
        .  . : 임의 한 문자 (줄바꿈 문자를 제외한 모든 단일 문자)
     - 반복성
        .  ?     : 0 또는 1회 만 매치 (아예 없거나 1회 만 나타남, 최대 1회)
        .  *     : 최소 0회 이상 반복 매치
        .  +     : 최소 1회 이상 반복 매치
        .  {n}   : n회 반복 매치
        .  {n,m} : n회 이상 m회 이하 반복 매치
        .  {n,}  : 적어도 n회 이상 반복 매치
     - 위치 지정
        .  ^   : 문자열의 시작
        .  $   : 문자열의 끝
     - 문자 클래스
        .  [0-9] 또는 d  : 모든 숫자
        .  [^0-9] 또는 D : 숫자가 아닌 모든 문자
     - 선택(or)
        .  |

  ㅇ 패턴 수식자 : 패턴 구분 문자인 슬래시(/) 뒤에서 지정
     -  i : 대소문자 구분 안함
     -  m : 줄 단위 매칭
     -  s : `.`을 줄바꿈 문자에도 매칭
     -  u : 정규표현식(패턴 문자열)을 UTF-8 인코딩으로 취급
     -  x : 이스케이프 또는 문자 클래스 내부를 제외하고, 패턴공백문자를 무시

  ㅇ 정규표현식 내 특수문자 이스케이프
     -  특수문자 : `.`, `,`, `?`, `*`, `+`, `^`, `$`, `[`, `]`, `(`, `)`
     -  이스케이프 처리 : 특수문자 앞에 역슬래시 `\`를 붙임
     -  만일, 단일 역슬래시와의 매치하려면, 역슬래시를 4번 씀(`\\\\`)

  ㅇ 관련 PHP 함수
     -  preg_match(pattern, subject)     : 최초 매치에서 멈춤
        . 패턴에 맞는 문자가 있으면 true 반환
     -  preg_match_all(pattern, subject) : 모든 매치를 찾음
     -  preg_replace(pattern, replacement, subject)


[PHP] 1. PHP 2. PHP 함수 3. 쿠키,세션 4. PHP 및 HTTP 5. PHP 정규표현식

 
        최근수정     모바일웹     참고문헌