Php/docs/function.preg-quote
preg_quote
(PHP 4, PHP 5, PHP 7)
preg_quote — 转义正则表达式字符
说明
preg_quote
( string $str
[, string $delimiter
= null
] ) : string
preg_quote()需要参数 str
并向其中
每个正则表达式语法中的字符前增加一个反斜线。 这通常用于你有一些运行时字符串
需要作为正则表达式进行匹配的时候。
正则表达式特殊字符有:
. \ + * ? [ ^ ] $ ( ) { } = ! < > | : - #
注意 /
不是正则表达式特殊字符。
Note:
注意:preg_quote() 的应用场景不是用于 preg_replace() 的 $replacement 字符串参数。
参数
str
- 输入字符串
delimiter
- 如果指定了可选参数
delimiter
,它也会被转义。这通常用于 转义PCRE函数使用的分隔符。/
是最常见的分隔符。
返回值
返回转义后的字符串。
更新日志
版本 | 说明 |
---|---|
7.3.0 | 字符 # 被增加为需要转义的。
|
范例
Example #1 preg_quote()示例
<?php$keywords = '$40 for a g3/400';$keywords = preg_quote($keywords, '/');echo $keywords; // 返回 \$40 for a g3\/400?>
Example #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);?>
注释
Note: 此函数可安全用于二进制对象。