이 세상에 하나는 남기고 가자

이 세상에 하나는 남기고 가자

세상에 필요한 소스코드 한줄 남기고 가자

PHP 정규식(PCRE)의 모든 것 - 구분기호(Delimiters)

유영재

Delimiters (구분 기호)

PCRE를 사용할 때 정규식 패턴은 Delimiters(구분 기호)로 묶여 있어야 한다. 구분 기호는 영숫자, 백 슬래시(\), 공백이 아닌 문자여야 한다. 자주 사용되는 구분 기호는 슬래시(/), 해쉬 기호(#) 및 물결표(~)다.

/foo bar/
#^[^0-9]$#
+php+
%[a-zA-Z0-9_-]%

구분 기호가 패턴 내부에서 일치해야 하는 경우 백 슬래시(\)를 사용하여 이스케이프 해야 한다. 구분 기호가 패턴 내부에 자주 나타나면 가독성을 높이기 위해 다른 구분 기호를 선택하는 것이 좋다.

/http:\/\//
#http://#

preg_quote() 함수는 패턴을 삽입하기 위해 문자열을 이스케이프하기 위해 사용될 수 있으며 선택적인 두 번째 매개 변수를 사용하여 이스케이프 할 구분 기호를 지정할 수 있다. 앞서 언급 한 구분 기호 이외에 중괄호({}) 구분 기호는 각각 시작({) 및 끝(}) 구분 기호로 사용될 수 있다.

{this is a pattern}

끝 분리 문자 뒤에 패턴 변경자를 추가 할 수 있다(자세한 내용은 PHP 정규표현식 패턴에 존재하는 변경자를 참고). 다음은 대소문자를 구분하지 않는 일치의 예이다.

#[a-z]#i

comments powered by Disqus