Delimiters (구분 기호)
PCRE를 사용할 때 정규식 패턴은 Delimiters(구분 기호)로 묶여 있어야 한다. 구분 기호는 영숫자, 백 슬래시(\
), 공백이 아닌 문자여야 한다. 자주 사용되는 구분 기호는 슬래시(/
), 해쉬 기호(#
) 및 물결표(~
)다.
/foo bar/
#^[^0-9]$#
+php+
%[a-zA-Z0-9_-]%
구분 기호가 패턴 내부에서 일치해야 하는 경우 백 슬래시(\
)를 사용하여 이스케이프 해야 한다. 구분 기호가 패턴 내부에 자주 나타나면 가독성을 높이기 위해 다른 구분 기호를 선택하는 것이 좋다.
/http:\/\//
#http://#
preg_quote() 함수는 패턴을 삽입하기 위해 문자열을 이스케이프하기 위해 사용될 수 있으며 선택적인 두 번째 매개 변수를 사용하여 이스케이프 할 구분 기호를 지정할 수 있다.
앞서 언급 한 구분 기호 이외에 중괄호({}
) 구분 기호는 각각 시작({
) 및 끝(}
) 구분 기호로 사용될 수 있다.
{this is a pattern}
끝 분리 문자 뒤에 패턴 변경자를 추가 할 수 있다(자세한 내용은 PHP 정규표현식 패턴에 존재하는 변경자를 참고). 다음은 대소문자를 구분하지 않는 일치의 예이다.
#[a-z]#i
- PHP 정규식(PCRE)의 모든 것 - 프롤로그
- > PHP 정규식(PCRE)의 모든 것 - 구분기호(Delimiters)
- PHP 정규식(PCRE)의 모든 것 - 메타문자(Meta-characters)
- PHP 정규식(PCRE)의 모든 것 - 이스케이프 시퀀스(Escape Sequences)
- PHP 정규식(PCRE)의 모든 것 - 유니코드 문자 속성(Unicode character properties)
- PHP 정규식(PCRE)의 모든 것 - 앵커(Anchors)
- PHP 정규식(PCRE)의 모든 것 - 마침표(Dot)
- PHP 정규식(PCRE)의 모든 것 - 캐릭터 클래스(Character classes)
- PHP 정규식(PCRE)의 모든 것 - 선택(Alternation)
- PHP 정규식(PCRE)의 모든 것 - 내부 옵션 설정(Internal option setting)
- PHP 정규식(PCRE)의 모든 것 - 서브 패턴(Subpatterns)
- PHP 정규식(PCRE)의 모든 것 - 반복(Repetition)
- PHP 정규식(PCRE)의 모든 것 - 역 참조(Back references)
- PHP 정규식(PCRE)의 모든 것 - 어설션(Assertions)
- PHP 정규식(PCRE)의 모든 것 - 일회성 서브 패턴(Once-only subpatterns)
- PHP 정규식(PCRE)의 모든 것 - 조건부 서브 패턴(Conditional subpatterns)
- PHP 정규식(PCRE)의 모든 것 - 주석(Comments)
- PHP 정규식(PCRE)의 모든 것 - 재귀 패턴(Recursive patterns)
- PHP 정규식(PCRE)의 모든 것 - 에필로그