| : - # ">
(PHP 4, PHP 5, PHP 7, PHP 8)
preg_quote — 轉(zhuǎn)義正則表達式字符
$str
, string $delimiter
= null
): string
preg_quote()需要參數(shù) str
并向其中
每個正則表達式語法中的字符前增加一個反斜線。 這通常用于你有一些運行時字符串
需要作為正則表達式進行匹配的時候。
正則表達式特殊字符有:
. \ + * ? [ ^ ] $ ( ) { } = ! < > | : - #
注意 /
不是正則表達式特殊字符。
注意:
注意:preg_quote() 的應用場景不是用于 preg_replace() 的 $replacement 字符串參數(shù)。
str
輸入字符串
delimiter
如果指定了可選參數(shù) delimiter
,它也會被轉(zhuǎn)義。這通常用于
轉(zhuǎn)義PCRE函數(shù)使用的分隔符。 /
是最常見的分隔符。
返回轉(zhuǎn)義后的字符串。
版本 | 說明 |
---|---|
7.3.0 |
字符 # 被增加為需要轉(zhuǎn)義的。
|
示例 #1 preg_quote()示例
<?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords; // 返回 \$40 for a g3\/400
?>
示例 #2 將文本中的單詞替換為斜體
<?php
//在這個例子中,preg_quote($word) 用于保持星號原文涵義,使其不使用正則表達式中的特殊語義。
$textbody = "This book is *very* difficult to find.";
$word = "*very*";
$textbody = preg_replace ("/" . preg_quote($word, '/') . "/",
"<i>" . $word . "</i>",
$textbody);
?>
注意: 此函數(shù)可安全用于二進制對象。