Outils
Regexpal est un processeur d'expressions régulières Javascript en ligne, l'adresse est : http://www.regexpal.com
La chose la plus importante dans l’apprentissage des règles régulières est le fonctionnement pratique. Donnons un exemple :
Numéro correspondant : 707-827-7019
Correspondance de groupes de caractères
[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9] [0-9]
d correspond à n'importe quel chiffre arabe
D correspond à n'importe quel chiffre non arabe
. Correspond à n'importe quel personnage
.dddDdddDddddD
ddd.ddd.dddd.
Capturer le regroupement et l'application en arrière
Utilisez des parenthèses () pour créer un groupe et utilisez 1 pour référencer le contenu du groupe capturé
(d)d1 correspond alors à 707
Numéro correspondant complet :
^((d{3})|^d{3}[.-]?)?d{3}[.-]?d{4}$
^ représente la position de départ d'une ligne
(Indique le caractère de départ du groupe de capture
( représente le crochet gauche
d{3} signifie faire correspondre trois chiffres
) représente la parenthèse droite
| indique la sélection
[.-] ? correspond à un point ou un trait d’union facultatif
) Capturez le personnage final du groupe
? Indique que le regroupement est facultatif
$ signifie jusqu'à la fin de la ligne
Bordure
Utilisez le curseur ^ au début d'une ligne ou d'une chaîne correspondante
Utilisez le signe dollar $
Quantificateur
Les quantificateurs sont gourmands par défaut
Un quantificateur glouton correspondra d'abord à la chaîne entière. Lorsqu'il essaie de faire correspondre, il sélectionne autant que possible, ce qui correspond à l'intégralité de l'entrée. Le quantificateur correspond d'abord au caractère entier, et s'il échoue, il recule d'un caractère et réessaye. Ce processus est appelé retour en arrière.
Le quantificateur paresseux recherche des correspondances à partir de la position de départ de la cible. Vérifie la chaîne un caractère à la fois, en recherchant à quoi elle correspond. Enfin, il tentera de faire correspondre la chaîne entière.
Le quantificateur possessif couvrira la totalité de la cible puis tentera de trouver une correspondance, mais il n'essaiera qu'une seule fois et ne reviendra pas en arrière.
Si vous utilisez .* pour faire correspondre un caractère zéro ou plusieurs fois
Quantificateur gourmand
Utilisez des accolades {} pour limiter le nombre de fois qu'un modèle correspond dans une certaine plage. De plus, les quantificateurs non modifiés sont des quantificateurs gourmands
.
7{1,} et 7+
7{0,} et 7*
7 ? et 7{0,1}
En gros c'est pareil
7{m,n} correspondra m à n fois
Quantificateur paresseux
Ajouter ? à la fin rend le quantificateur paresseux
7 ?? Le premier 7 ? correspond à zéro ou un 7, après la paresse ça ne correspondra à rien
7* ? correspond à zéro 7
7+ ? correspond à un 7
7{m,n} ? Correspond à m7
Concernant la correspondance régulière des balises html et xml, j'en parlerai la prochaine fois