Commentaires

La séquence (?# marque le début d'un commentaire, qui se termine à la prochaine parenthèse fermante. Les parenthèses imbriquées ne sont pas autorisées. Les caractères entre ces délimiteurs ne jouent alors aucun rôle dans le masque.

Si l'option PCRE_EXTENDED est activée, les caractères dièses # non protégés en dehors d'une classe de caractères introduisent un commentaire qui continuera jusqu'à la prochaine ligne dans le masque.

Exemple #1 Usage de commentaire dans un masque PCRE

<?php

$subject 
'test';

/* (?# can be used to add comments without enabling PCRE_EXTENDED */
$match preg_match('/te(?# this is a comment)st/'$subject);
var_dump($match);

/* Whitespace and # is treated as part of the pattern unless PCRE_EXTENDED is enabled */
$match preg_match('/te   #~~~~
st/'
$subject);
var_dump($match);

/* When PCRE_EXTENDED is enabled, all whitespace data characters and anything
   that follows an unescaped # on the same line is ignored */
$match preg_match('/te    #~~~~
st/x'
$subject);
var_dump($match);

L'exemple ci-dessus va afficher :

int(1)
int(0)
int(1)