Функциональный блок PREG_FILTER

Функциональный блок PREG_FILTER ищет и заменяет с использованием регулярных выражений.

Примечание: Эта функция является Binary-Safe. Это означает, что UTF8-символы не могут быть обработаны напрямую.

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

Вход PATTERN

Выражение в виде строки, по которому производится поиск. Также доступны некоторые модификаторы PCRE.

Вход REPLACEMENT

Строка для замены. Она может содержать ссылки в форме \n или $n, причем последняя предпочтительнее. Каждая из этих ссылок заменяется текстом, который был захвачен n-м скобочным шаблоном поиска. n может иметь значение от 0 до 99. \0 или $0 относятся к тексту, который соответствует полному шаблону поиска. Для получения номера захватывающего подшаблона поиска открывающие скобки считаются с 1, начиная слева направо. Чтобы использовать обратную косую черту в замене, она должна быть удвоена "\\".

Если вы хотите работать с заменой, в которой на ссылку сразу следует другая цифра (т.е. сразу после совпадения с шаблоном поиска должна следовать цифра), то вы не можете использовать запись \1 для своей ссылки. Например, \11 может сбить функцию с толку, потому что она не знает, хотите ли вы ссылку \1, за которой следует цифра 1, или просто ссылку \11. В этом случае решение — использовать ${1}1. Это создает изолированную ссылку $1, и 1 остается символом.

Если вы используете устаревший модификатор e, эта функция маскирует несколько символов (а именно ', ", \ и NULL) в строках, на которые ссылаются ссылки. Это делается для того, чтобы гарантировать отсутствие синтаксических ошибок при использовании ссылок, содержащих одинарные или двойные кавычки. Убедитесь, что вы знаете синтаксис строки, чтобы точно знать, как выглядит оцениваемая строка.

Вход SUBJECT

Вход определяет строку для поиска.

Вход LIMIT

Максимально возможное количество замен для каждого шаблона в каждой subject. Значение по умолчанию: -1 или NULL (нет ограничения).

Выход Q

Если совпадения (возможно преобразованные) найдены, возвращается новая строка Q, в противном случае возвращается SUBJECT без изменений или NULL, если произошла ошибка.

Выход COUNT

Выход возвращает количество выполненных замен.