Les expressions régulières permettent d'effectuer des manipulations complexes de chaînes de caractères en utilisant des modèles (pattern) répondant à des règles de syntaxes précises.
Tout d'abord, plusieurs symboles spéciaux permettent de délimiter précisément un modèle :
| Symbole | Description |
|---|---|
| ^ | indiquant le début d'une chaîne de caractères, |
| $ | indiquant la fin d'une chaîne de caractères. |
| \b | indiquant une limite de mot d'une chaîne de caractères, soit la position entre un mot (\w) et un espace ou un caractère de ponctuation (\W). |
| \B | indiquant ce qui n'est pas une limite de mot dans une chaîne de caractères. |
| \d | indique un chiffre comprenant les caractères suivants [0-9]. |
| \D | indique ce qui n'est pas un chiffre [^0-9]. |
| \n | indique un nouvelle ligne. |
| \r | indique un retour charriot. |
| \s | indique un espace blanc comme \t, \n, \r, ou \f. |
| \S | indique ce qui n'est pas un espace blanc (\t|\n|\r|\f). |
| \t | indique une tabulation verticale. |
| \w | indique un mot comprenant le caractères suivants [0-9a-zA-Z_]. |
| \W | indique ce qui n'est pas un mot [^0-9a-zA-Z_] |
$chaine = "Le loup est dans la bergerie."; // recherche 'Le' en début de chaîne $regexp = "^Le"; // recherche 'rie.' en fin de chaîne $regexp = "rie\.$"; // recherche 'ber' au début d'un mot ex: 'bergerie' $regexp = "\bber"; $regexp = "\sber"; $regexp = "\Wber"; // recherche 'rie' à la fin d'un mot ex: 'bergerie' $regexp = "rie\b"; $regexp = "rie\W"; /* recherche 'rie' à la fin d'un mot mais ne le trouve pas
car 'bergerie' se termine par un point et pas par un espace blanc */ $regexp = "rie\s"; // recherche 'but' à la fin d'un mot ex: 'début' $regexp = "but\s" // recherche 'ger' dans un mot ex: 'bergerrie' $regexp = "\Bger"; $regexp = "\Sger"; $regexp = "\wger";
Si une expression régulière ne contient aucun des deux symboles '^' ou '$', alors le domaine de recherche peut être située n'importe où dans la chaîne de caractères.
$regexp = "dans"; $regexp = "loup";