PHP 정규표현식

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

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

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


2.  패턴 기호

  ㅇ 단일 문자 
     -  . : 임의 한 문자 (줄바꿈 문자를 제외한 모든 단일 문자)

  ㅇ 반복성
     -  ?     : 0 또는 1회 만 매치 (아예 없거나 1회 만 나타남, 최대 1회)
     -  *     : 최소 0회 이상 반복 매치
     -  +     : 최소 1회 이상 반복 매치
     -  {n}   : n회 반복 매치
     -  {n,m} : n회 이상 m회 이하 반복 매치
     -  {n,}  : 적어도 n회 이상 반복 매치

  ㅇ 위치 지정
     -  ^   : 문자열의 시작
     -  $   : 문자열의 끝

  ㅇ 문자 클래스
     -  [0-9] 또는 d  : 모든 숫자
     -  [^0-9] 또는 D : 숫자가 아닌 모든 문자

  ㅇ 선택(or)
     -  |


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


4. 정규표현식 내 특수문자 이스케이프

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


5. 관련 PHP 함수

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


[PHP] 1. PHP 2. PHP 함수 3. PHP 및 HTTP 4. PHP 정규표현식 5. PHP 문자열 활용 6. PHP 쿠키/세션 7. PHP 내장 웹서버 8. PHP 환경 설정 9. PHP 변수 자료형
  1.   기술공통
  2.   기초과학
  3.   파동/광학/음향
  4.   방송/멀티미디어/정보이론
  5.   전자/전기/제어
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
      1.   프로그래밍 언어론
      2.   객체지향
      3.   자료구조
      4.   알고리즘
      5.   자료표현(알파벳/코드)
      6.   시스템 프로그래밍
      7.   프로그래밍언어 종류
            1. 프로그래밍 언어
            2. 기계어,어셈블리언어
        1.   C/C++
        2.   자바(Java)
        3.   자바스크립트
        4.   PHP
          1.   1. PHP
              2. PHP 함수
              3. PHP 및 HTTP
              4. PHP 정규표현식
              5. PHP 문자열 활용
              6. PHP 쿠키/세션
              7. PHP 내장 웹서버
              8. PHP 환경 설정
              9. PHP 변수 자료형
        5.   (기타 언어)
      8.   프로그래밍 기타일반
    4.   데이터베이스
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   기계/재료/공업일반
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     참고문헌