Maison > développement back-end > Problème PHP > Comment échapper aux caractères d'expression régulière en php

Comment échapper aux caractères d'expression régulière en php

藏色散人
Libérer: 2023-03-07 13:50:01
original
2983 Les gens l'ont consulté

在php中可以通过“preg_last_error”函数将正则表达式字符进行转义,其语法是“string preg_quote ( string $str [, string $delimiter = NULL ] )”。

Comment échapper aux caractères d'expression régulière en php

推荐:《PHP视频教程

preg_last_error 函数用于转义正则表达式字符。

语法

string preg_quote ( string $str [, string $delimiter = NULL ] )
Copier après la connexion

preg_quote() 需要参数 str 并向其中 每个正则表达式语法中的字符前增加一个反斜线。 这通常用于你有一些运行时字符串 需要作为正则表达式进行匹配的时候。

正则表达式特殊字符有: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : -

参数说明:

$str: 输入字符串。

$delimiter: 如果指定了可选参数 delimiter,它也会被转义。这通常用于 转义 PCRE 函数使用的分隔符。 / 是最通用的分隔符。

返回值

返回转义后的字符串。

实例

实例 1

<?php
$keywords = &#39;$40 for a g3/400&#39;;
$keywords = preg_quote($keywords, &#39;/&#39;);
echo $keywords; 
?>
Copier après la connexion

执行结果转义了 $ 和 / 特殊字符,如下所示:

返回 \$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;
?>
Copier après la connexion

执行结果如下所示:

This book is <i>*very*</i> difficult to find.
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal