Home >Backend Development >PHP Problem >How to escape regular expression characters in php
在php中可以通过“preg_last_error”函数将正则表达式字符进行转义,其语法是“string preg_quote ( string $str [, string $delimiter = NULL ] )”。
推荐:《PHP视频教程》
preg_last_error 函数用于转义正则表达式字符。
语法
string preg_quote ( string $str [, string $delimiter = NULL ] )
preg_quote() 需要参数 str 并向其中 每个正则表达式语法中的字符前增加一个反斜线。 这通常用于你有一些运行时字符串 需要作为正则表达式进行匹配的时候。
正则表达式特殊字符有: . \ + * ? [ ^ ] $ ( ) { } = ! 6d267e5fab17ea8bc578f9e7e5e1570b | : -
参数说明:
$str: 输入字符串。
$delimiter: 如果指定了可选参数 delimiter,它也会被转义。这通常用于 转义 PCRE 函数使用的分隔符。 / 是最通用的分隔符。
返回值
返回转义后的字符串。
实例
实例 1
<?php $keywords = '$40 for a g3/400'; $keywords = preg_quote($keywords, '/'); echo $keywords; ?>
执行结果转义了 $ 和 / 特殊字符,如下所示:
返回 \$40 for a g3\/400
将文本中的单词替换为斜体
<?php //在这个例子中,preg_quote($word) 用于保持星号原文涵义,使其不使用正则表达式中的特殊语义。 $textbody = "This book is *very* difficult to find."; $word = "*very*"; $textbody = preg_replace ("/" . preg_quote($word) . "/", "<i>" . $word . "</i>", $textbody); echo $textbody; ?>
执行结果如下所示:
This book is <i>*very*</i> difficult to find.
The above is the detailed content of How to escape regular expression characters in php. For more information, please follow other related articles on the PHP Chinese website!