English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Основной Учебник

PHP Уровеньный Учебник

PHP & MySQL

PHP Референс Мануал

Пример использования функции preg_replace() в PHP с примерами

PHP регулярные выражения (PCRE)

Функция preg_replace выполняет поиск и замену регулярного выражения.

Синтаксис

mixed preg_replace ( mixed $pattern, mixed $replacement, mixed $subject [, int $limit = -1 [, int &$count ]])

Искать совпадения pattern в subject и заменять их replacement.

Описание параметров:

  • $pattern: шаблон для поиска, может быть строкой или массивом строк.

  • $replacement: строка или массив строк для замены.

  • $subject: целевая строка или массив строк для поиска и замены.

  • $limit: опционально, максимальное количество замен для каждого шаблона на каждый subject-строку. По умолчанию -1 (без ограничений).

  • $count: опционально, количество выполненных замен.

Возвратное значение

Если subject является массивом, preg_replace() возвращает массив, в других случаях возвращает строку.

Если обнаружен соответствующий шаблон, возвращается измененный subject, в противном случае возвращается без изменений subject. В случае ошибки возвращается NULL.

Онлайн пример

<?php
$string = 'google 123, 456';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = 'w3codebox ${2},${3}';
echo preg_replace($pattern, $replacement, $string);
?>

Результат выполнения приведен ниже:

w3codebox 123,456
<?php
$str = 'nho o o';
$str = preg_replace('/\s+/', '', $str);
// Будет изменено на 'w3codebox'
echo $str;
?>

Результат выполнения приведен ниже:

w3codebox
<?php
$string = 'The quick brown fox jumped over the lazy dog.';
$patterns = array();
$patterns[0] = '/quick/';
$patterns[1] = '/brown/';
$patterns[2] = '/fox/';
$replacements = array();
$replacements[2] = 'bear';
$replacements[1] = 'black';
$replacements[0] = 'slow';
echo preg_replace($patterns, $replacements, $string);
?>

Результат выполнения приведен ниже:

The bear black slow jumped over the lazy dog.
<?php
$count = 0;
 
echo preg_replace(array('/\d/', '/\s/'), '*', 'xp 4 to', -1, $count);
echo $count; //3
?>

Результат выполнения приведен ниже:

xp***to
3

PHP регулярные выражения (PCRE)