Разделители
При использовании любой PCRE функции необходимо заключать
шаблон в разделители.
Разделителем может быть любой символ не являющийся буквой, цифрой,
обратной косой чертой или каким-либо пробельным символом.
Пробелы в начале перед корректным разделителем игнорируются.
Часто используемыми разделителями являются косые черты (/
),
знаки решётки (#
) и тильды (~
). Ниже
представлены примеры шаблонов с корректными разделителями.
Также можно использовать разделитель в виде скобок, где
стартовый и завершающий разделители являются соответственно открывающей
и закрывающей скобками. ()
,
{}
, []
и <>
являются допустимыми парами разделителей.
Разделители в виде скобок не нужно экранировать, если они также используются
как метасимволы в шаблоне, но как и с другими разделителями их нужно
экранировать, если они используются непосредственно как символы.
Если необходимо использовать разделитель внутри шаблона,
его нужно проэкранировать с помощью обратной косой черты.
Если разделитель часто используется в шаблоне, в целях удобочитаемости,
лучше выбрать другой разделитель для этого шаблона.
Функция
preg_quote() может быть использована для
экранирования строки, используемой в шаблоне, а её необязательный второй параметр
позволяет указать используемый разделитель.
После закрывающего разделителя можно использовать
модификаторы
шаблонов. Ниже следует пример регистронезависимого поиска: