При работе с функциями модуля PCRE шаблон заключают в разделители. В качестве разделителя разрешены любые символы, кроме буквенно-цифровых, обратного слеша или пробельных символов. Парсер без предупреждения проигнорирует пробел перед корректным разделителем.
Разделители, которыми пользуются чаще: слеши (/),
знаки решётки (#) и тильды (~).
Следующий абзац приводит примеры шаблонов с корректными разделителями.
/foo bar/ #^[^0-9]$# +php+ %[a-zA-Z0-9_-]%
Скобки также указывают как разделители, где начальный разделитель —
открывающая скобка, а конечный разделитель —
закрывающая. Символы (), {},
[] и <> —
допустимые пары разделителей.
(this [is] a (pattern))
{this [is] a (pattern)}
[this [is] a (pattern)]
<this [is] a (pattern)>
Разделитель экранируют обратным слешем «\», если нужно указать разделитель внутри шаблона. Если разделитель часто указывают в шаблоне, в целях удобочитаемости выбирают другой разделитель для этого шаблона.
/http:\/\// #http://#
После закрывающего разделителя указывают модификаторы шаблонов. Следующий пример показывает сопоставление без учёта регистра:
#[a-z]#i