Korben, roi d’internet, logo bébé avec des lunettes en mode thug life Korben, roi d’internet, logo bébé avec des lunettes en mode thug life

Korben Upgrade your mind

iHateRegex – Le site qui décortique les expressions régulières pour ceux qui les détestent

Si vous avez pour habitude de manipuler des expressions régulières (Regexp), voici un site qui devrait vous aider à les tester, mais surtout à les comprendre un peu mieux.

Ce site c’est iHateRegex développé par Geon George et ça s’adresse aux gens comme moi qui détestent les regexp trop compliquées ;-).

Pourquoi ? Et bien en plus de nombreux exemples assez classiques, le site permet de visualiser à l’aide d’un graphique le fonctionnement de votre expression régulière.

Ainsi, plus besoin de vous prendre la tête pour capter son fonctionnement et éventuellement les optimiser ou les debugger.

Voici par exemple une Regex qui permet d’isoler les dates ayant le format jj/mm/aaaa.

(?:(?:31(/|-|.)(?:0?[13578]|1[02]))1|(?:(?:29|30)(/|-|.)(?:0?[1,3-9]|1[0-2])2))(?:(?:1[6-9]|[2-9]d)?d{2})$|^(?:29(/|-|.)0?23(?:(?:(?:1[6-9]|[2-9]d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))$|^(?:0?[1-9]|1d|2[0-8])(/|-|.)(?:(?:0?[1-9])|(?:1[0-2]))4(?:(?:1[6-9]|[2-9]d)?d{2})

C’est comme si on me parlait en Wraith (ref à Stargate pour ceux qui se poseraient la question). Heureusement, avec iHateRegex, celle-ci peut devenir claire comme de l’eau de roche avec le petit schéma suivant. J’ai choisi un exemple un peu complexe, j’avoue, mais c’est pour vous montrer que l’outil permet d’aller loin.

Voici un exemple un peu plus simple qui matche les adresses email :

À bookmarker pour les soirées d’hiver.


Réponses notables

  1. Les regex pour les adresses mails (simple ou compliqué) ne sont pas terribles.
    Les adresses foo/fewjfdfs@127.0.0.1 ou bar+fhssf@localhost ne sont pas reconnus comme tel.

    Le plus approchant est celui donné sur https://emailregex.com/

Continuer la discussion sur Korben Communauté

4 commentaires supplémentaires dans les réponses

Participants