16/04/2009

Expressions regulieres : logiciel de test et exemples

Merci à Ghacks de nous avoir fourni le lien vers The Regex Coach, un freeware développé en Lisp, qui permet tests et mise au point des expressions régulières.
Petit rappel, les expressions régulières ou regexp ou encore rationnelles, regroupent un ensemble de conventions syntaxiques reconnues par plusieurs langages de programmation et permettant de rechercher dans une chaîne de caractères la présence d'une ou plusieurs autres chaînes.
Plutôt que de longs discours, des exemples :
Détection d'une date dans un texte, composée d'une suite de deux chiffres, puis deux chiffres puis quatre chiffres :
.*([0-9]{2})([0-9]{2})([0-9]{4}).

On voit dans l'écran ci-dessus que la première séquence de 4 chiffres est soigneusement évitée car isolée, et que seule la séquence de 4 immédiatement précédée de 2 X 2 chiffres est détectée. La seconde flèche rouge nous indique en outre qu'il s'agit de la troisième occurence de chiffres recherchée dans la présente expression.
Détection d'un Url dans un texte :
http://[\w.%/?=&#:;+-]{5,}net|com
Dans l'écran ci-dessus, on détectera uniquement le premier Url de type com ou net rencontré dans le texte soumis.
La syntaxe gérée par ce freeware pour les regexp est celle de Perl et plus particulièrement des toolkits 
PCRE et CL-PPCRE. Se méfier par contre de la syntaxe Java, compatible à 99% ...
La compatibilité Perl le rend utilisable par les développeurs Python ; Php entre autres. Par acquis de conscience on peut faire une contre-vérification sur le site annuaire-info.com qui permet de tester en ligne une expression régulière Perl et qui est en français, lui ;-).
The Regex Coach permet aussi notamment d'effectuer des remplacements automatiques de chaînes dans des textes importants. Maximisation de la fenêtre et des champs sont bien sur possibles.

Aucun commentaire:

Enregistrer un commentaire