English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
PHP регулярные выражения (PCRE)
Функция preg_last_error используется для escaping символов регулярного выражения.
string preg_quote ( string $str [, string $delimiter = NULL ] )
preg_quote() требует параметра str и добавляет обратную косую черту перед каждым символом синтаксиса регулярного выражения. Это обычно используется, когда у вас есть строка, которая должна быть выполнена как регулярное выражение в runtime.
Специальные символы регулярного выражения: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : -
Объяснение параметров:
$str: Входная строка.
$delimiter: Если был указан опциональный параметр delimiter, он также будет escaped. Это обычно используется для escaping разделителей, используемых функцией PCRE. / является наиболее общим разделителем.
Верните escaped строку.
<?php
$keywords = '$40 for a g3/400';
$keywords = preg_quote($keywords, '/');
echo $keywords;
?>
Результат выполнения escaping специальных символов $ и / приведен ниже:
Верните \$40 за g3\/400
<?php
//В этом примере, preg_quote($word) используется для сохранения смысла астерика, чтобы он не использовался с особым значением в регулярных выражениях.
$textbody = "Эта книга *очень* трудно найти.";
$word = "*very*";
$textbody = preg_replace ("/" . preg_quote($word) . "/",
"<i>" . $word . "</i>",
$textbody);
echo $textbody;
?>
Результат выполнения приведен ниже:
Эта книга <i>*очень*</i> трудно найти.