Général

Les PCRE

Les POSIX

Pratique

Linux

Spécial php

Les billets de fred

Les ancrages et classes génériques POSIX et PCRE


Voici la liste des symboles permettant de délimiter (ou ancrer) précisément un élément de recherche.
Certains sont comparables à des classes de caractères (posix) et à des assertions simples.

Attention, ceci n'a absolument aucun rapport avec les délimiteurs qui entourent le motif de la regex.
>>> Voir cet article

Les ancrages et classes suivantes sont utilisés tant avec POSIX qu'avec PCRE

Symbole Description

^ L'accent circonflexe
Indique le début de la chaîne de caractères

$ Le symbole dollar
Indique la fin de la chaîne de caractères

[0-9] ou [[:digit:]] Indique la série de caractères suivants
0123456789 ==> ce qui est un chiffre (digit)

[a-z] ou [[:alpha:]] Indique la série de caractères suivants
abc...xyz ==> ce qui est une lettre (alpha)

\n Indique une nouvelle ligne

\r Indique un retour chariot

Vous trouverez la liste complète des autres classes sur la page : >>> Les symboles -> point 6

Les ancrages et classes génériques PCRE:

Les éléments suivants ne sont utilisés qu'avec PCRE

Symbole Description
\b Indique une limite de mot dans une chaîne de caractères

\B Indique ce qui n'est pas une limite de mot dans une chaîne de caractères

\d Indique la classe de caractères suivants
[0-9] ==> ce qui est un chiffre (digit)

\D Indique la classe de caractères suivants
[^0-9] ==> ce qui n'est pas un chiffre

\s Indique un espace blanc \t, \r, \n, \f. (space)

\S Indique ce qui n'est pas un espace blanc \t, \r, \n, \f.

\w Indique un mot qui correspond à la classe [0-9a-zA-Z_]
L'underscore étant compris dans cette classe.
Les accentués le sont aussi mais cela dépend de la configuration serveur.

\W Indique ce qui n'est pas un mot - correspond à la classe [^0-9a-zA-Z]


Exemple :
$chaine="Je veux apprendre les expressions régulières";

// on recherche la valeur "Je" en début de chaîne
$motif="^Je";

// on recherche la valeur "res" en fin de chaîne
$motif="res\.$";

// on recherche la valeur "express" dans le mot expressions
$motif="\bexpress";
$motif="\sexpress";
$motif="\Wexpress";

// on recherche la valeur "sions" dans le mot expressions
$motif="sions\b";
$motif="sions\W";

// on recherche la valeur "eu" dans le mot veux
$motif="\Beu";
$motif="\Seu";
$motif="\weu";
?>

Voilà, un petit condensé d'exemples que nous utiliserons dans les cours suivants.

ADAM Benjamin 2008 | Admin