Производит поиск и замену по регулярному выражению


(PHP 5 >= 5.3.0)

preg_filterПроизводит поиск и замену по регулярному выражению

Описание

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

Функция preg_filter() идентична функции preg_replace() за исключением того, что возвращает только те значения (возможно, преобразованные), в которых найдено совпадение. Подробнее о работе функции читайте в документации к preg_replace().

Возвращаемые значения

Возвращает array, если аргумент subject имеет тип array, или string в противном случае.

Если совпадений не найдено или возникла ошибка, возвращается пустой массив array, когда subject имеет тип array, или NULL в противном случае.

Примеры

Пример #1 Пример для сравнения функций preg_filter() и preg_replace()

<?php
$subject 
= array('1''а''2''б''3''А''Б''4'); 
$pattern = array('/\d/''/[а-я]/''/[1а]/'); 
$replace = array('А:$0''Б:$0''В:$0'); 

echo 
"preg_filter возвращает\n";
print_r(preg_filter($pattern$replace$subject)); 

echo 
"preg_replace возвращает\n";
print_r(preg_replace($pattern$replace$subject)); 
?>

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

 preg_filter возвращает Array (     [0] => А:В:1     [1] => Б:В:а     [2] => А:2     [3] => Б:б     [4] => А:3     [7] => А:4 ) preg_replace возвращает Array (     [0] => А:В:1     [1] => Б:В:а     [2] => А:2     [3] => Б:б     [4] => А:3     [5] => А     [6] => Б     [7] => А:4 ) 

Смотрите также

  • Шаблоны PCRE
  • preg_quote() - Экранирует символы в регулярных выражениях
  • preg_replace() - Выполняет поиск и замену по регулярному выражению
  • preg_replace_callback() - Выполняет поиск по регулярному выражению и замену с использованием callback-функции
  • preg_grep() - Возвращает массив вхождений, которые соответствуют шаблону
  • preg_last_error() - Возвращает код ошибки выполнения последнего регулярного выражения PCRE