정규식(PCRE) preg_quote

(PHP 4, PHP 5, PHP 7, PHP 8)

preg_quote — 정규 표현식 문자 인용


설명

preg_quote(string $str, ?string $delimiter = null): string

preg_quote()str을 취하고 정규식 구문의 일부인 모든 문자 앞에 백슬래시를 넣습니다. 이는 일부 텍스트에서 일치시켜야 하는 런타임 문자열이 있고 문자열에 특수 정규식 문자가 포함될 수 있는 경우에 유용합니다.

특수 정규식 문자는 다음과 같습니다. . \ + * ? [ ^ ] $ ( ) { } = ! < > | : - #

/는 특수 정규식 문자가 아닙니다.

메모: preg_quote()preg_replace() 등의 $replacement 문자열에 적용되지 않습니다.


매개변수

str
입력 문자열입니다.
delimiter
선택적 delimiter가 지정된 경우 이스케이프도 수행됩니다. 이는 PCRE 함수에 필요한 구분 기호를 이스케이프하는 데 유용합니다. /는 가장 일반적으로 사용되는 구분 기호입니다.

반환 값

따옴표로 묶인(이스케이프 처리된) 문자열을 반환합니다.


변경 로그

버전 설명
7.3.0 이제 # 문자가 인용됩니다.
7.2.0 delimiter는 이제 nullable입니다.

Examples

예제 #1 preg_quote() 예제

                  
<?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords; // returns \$40 for a g3\/400
?>
                  
                

예제 #2 일부 텍스트 내에서 단어 기울임꼴

                  
<?php
// In this example, preg_quote($word) is used to keep the
// asterisks from having special meaning to the regular
// expression.

$textbody = "This book is *very* difficult to find.";
$word = "*very*";
$textbody = preg_replace ("/" . preg_quote($word, '/') . "/",
                          "<i>" . $word . "</i>",
                          $textbody);
?>
                  
                

메모

참고: 이 함수는 바이너리 안전합니다.


기타