Ao usar as funções PCRE, é necessário que a expressão esteja entre delimitadores. Um delimitador pode ser qualquer caractere não alfanumérico que não seja uma barra invertida e que não corresponda a um espaço em branco. Espaços em branco antes de um delimitador válido são silenciosamente ignorados.
Delimitadores comumente usados são barras (/), cerquilhas
(#) e til (~). Os exemplos
a seguir são padrões com delimitadores válidos.
/foo bar/ #^[^0-9]$# +php+ %[a-zA-Z0-9_-]%
Também é possível usar delimitadores
no estilo parênteses, onde os delimitadores inicial e final são
os caracteres de abertura e fechamento, respectivamente. (),
{}, [] e <>
são todos pares válidos de delimitadores nesse estilo.
(esta [é] uma (expressão))
{esta [é] uma (expressão)}
[esta [é] uma (expressão)]
<esta [é] uma (expressão)>
Se o delimitador precisa ser correspondido dentro da expressão, ele precisa ser escapado usando uma barra invertida. Se o delimitador aparece com muita frequência dentro da expressão, é uma boa ideia escolher um delimitador diferente para melhorar a legibilidade.
/http:\/\// #http://#
Pode-se adicionar modificadores de expressão após o delimitador final. Este é um exemplo de correspondência insensível a maiúsculas/minúsculas usando o modificador "i":
#[a-z]#i