J1. Options des expressions régulières PCRE

Les expressions régulières sont utilisées dans le fichier de configuration du Serveur Dr.Web ainsi que dans le Centre de gestion lors du paramétrage des objets à exclure de l’analyse dans la configuration du Scanner Dr.Web.

Les expressions régulières ont le format suivant :

qr{EXP}options

EXP — expression même, options — séquence des options (ligne de caractères). qr{} — métacaractères littéraux. Voici un exemple de construction :

qr{pagefile\.sys}i : fichier swap de Windows NT

Vous trouverez ci-dessous une description des options et des expressions régulières. Pour plus d’information, visitez le lien http://www.pcre.org/pcre.txt.

Option 'a' correspondant à PCRE_ANCHORED

Avec cette option, le motif est ancré, il est limité par la comparaison uniquement avec la première position recherchée dans la ligne de recherche (« chaîne sujet »). Il est possible d’y arriver avec des constructions respectives dans le motif.

Option 'i' correspondant à PCRE_CASELESS

Avec cette option, les caractères du motif sont comparés aux majuscules et aux minuscules. Cette possibilité peut être modifiée dans le motif par le paramétrage de l’option (?i).

Option ’x’ correspondant à PCRE_EXTENDED

Avec cette option, les caractères d’espacement sont ignorés, sauf lorsqu’ils sont échappés, ou à l’intérieur d’une classe de caractères. L’espace ne comprend pas le symbole VT (code 11). De plus, tous les caractères entre # non échappés et en dehors d’une classe de caractères, ainsi que le caractère de nouvelle ligne sont ignorés. Cette option peut être modifiée dans le motif par le paramétrage de l’option (?x). Le paramétrage permet d’inclure les commentaires dans les masques compliqués. Il est à noter cependant que ceci n’est applicable qu’aux symboles de données. Les caractères d’espacement ne peuvent pas apparaître dans les séquences spécifiques d’un masque, par exemple à l’intérieur de la séquence (?( qui introduit une parenthèse conditionnelle.

Option ’m’ correspondant à PCRE_MULTILINE

Par défaut, PCRE traite la chaîne sujet comme une seule ligne (même si cette chaîne contient des retours chariot). Le métacaractère "début de ligne" (^) ne sera valable qu’une seule fois, au début de la ligne, et le méta caractère "fin de ligne " ($) ne sera valable qu’à la fin de la chaîne, ou avant le retour chariot final (à moins que l’option PCRE_DOLLAR_ENDONLY ne soit activée).

Lorsque l’option PCRE_MULTILINE est activée, les métacaractères "début de ligne" et "fin de ligne" correspondront alors aux caractères suivant et précédant immédiatement un caractère de nouvelle ligne, en plus du début et de la fin de la chaîne. Cette option peut être modifiée dans le masque par le paramétrage de l’option (?m). Si le texte ne contient pas les caractères "\n" ou que le masque ne contient pas les caractères ^ ou $, l’option PCRE_MULTILINE perd son sens.

Option 'u' correspondant à PCRE_UNGREEDY

Cette option inverse la tendance à la gourmandise des expressions régulières. Vous pouvez aussi inverser cette tendance au coup par coup avec un ?. De même, si cette option est activée, le ? rendra gourmand une séquence. Ceci peut également être paramétré avec l’option (?U) dans le modèle.

Option 'd' correspondant à PCRE_DOTALL

Avec cette option, le méta caractère point "." dans le masque est comparé avec tous les caractères, y compris le caractère de la nouvelle ligne. Si le méta caractère n’est pas présent, les caractères de la nouvelle ligne seront exclus. Cette option peut être modifiée dans le motif avec la spécification de la nouvelle option (?s). La classe négative, par exemple [^a] est toujours comparée avec le caractère de la nouvelle ligne quels que soient les paramètres de l’option.

Option 'e' correspondant à PCRE_DOLLAR_ENDONLY

Avec cette option, le métacaractère $ ne sera valable qu’à la fin de la chaîne sujet. Sans cette option, $ est aussi valable avant une nouvelle ligne, si cette dernière est le dernier caractère de la chaîne. L’option PCRE_DOLLAR_ENDONLY est ignorée si l’option CRE_MULTILINE est activée.