Regex 101 est un outil utile pour créer et tester ses expressions régulières. Cet article ne vous apprendra pas les expressions régulières. A la place, il vous donnera quelques conseils sur l’utilisation de Regex101.com pour apprendre et construire des expressions fonctionnelles.
Sommaire :
Qu’est-ce qu’une expression régulière et pourquoi est-elle importante ?
Une Regex est tiré de l’anglais Regular Expression. Il s’agit d’une chaîne de caractères qui sert à extraire des informations de n’importe quelle chaîne de données. Elle peut rechercher dans le texte ce dont vous avez besoin. Qu’il s’agisse de chiffres, de lettres, de signes de ponctuation ou même d’espaces blancs, les expressions régulières vous permettent de vérifier et de faire correspondre n’importe quelle combinaison de caractères dans les chaînes de caractères.
Par exemple, supposons que vous ayez besoin de faire correspondre le format d’un numéro de sécurité sociale ou d’une adresse électronique. Vous pouvez utiliser la fonction Regex pour rechercher des modèles dans les chaînes de texte. Après cela, vous pourrez les utiliser pour remplacer ou valider une autre sous-chaîne. En d’autres termes, pensez à Regex comme à votre propre barre de recherche. Elle vous donne la liberté de définir vos propres critères de recherche pour un modèle qui correspond à vos besoins et vous aide à trouver ce que vous cherchez.
Qu’est-ce que Regex101.com ?
Regex101.com est une console interactive d’expressions régulières qui vous permet de déboguer vos expressions en temps réel. Cela signifie que vous pouvez construire vos expressions et voir comment elles affectent un ensemble de données en direct, le tout sur un seul écran et en même temps.
L’outil a été créé par Firas Dib, avec la contribution de nombreux autres développeurs. On dit qu’il s’agit du plus grand service de test de regex au monde.
Caractéristiques de Regex101.com
Regex101.com nous permet de construire des expressions rapidement et de déboguer en cours de route. Nous pouvons coller un ensemble de données et ensuite, par essais et erreurs, construire une expression qui fait ce que nous voulons.
L’outil indique clairement si les données correspondent ou non à notre expression.
Dans cet exemple, nous essayons de faire correspondre des mots clés avec trois caractères « l » consécutifs, mais aucune correspondance n’a été trouvée, car aucune chaîne de notre zone de test ne comporte trois caractères « l » consécutifs.
Il nous indique même quand notre expression « crashe » et nous donne une explication de la raison pour laquelle l’expression ne fonctionne pas.
Par exemple, nous essayons de faire correspondre le mot « hello », mais nous mélangeons les caractères « [ » et « } », ce qui n’est pas une expression valide.
Ces deux mécanismes de retour d’information sont très utiles si vous ne maîtrisez pas le langage des expressions régulières ou si vous ne savez pas encore comment construire la bonne expression. La possibilité de retracer chaque étape de votre expression est une véritable bouée de sauvetage lorsque vous ne parvenez pas à comprendre pourquoi quelque chose ne fonctionne pas, ou même si vous souhaitez simplement en savoir plus sur les expressions régulières.
Pour obtenir ce retour d’information instantané sans Regex101.com, il aurait fallu écrire les expressions dans un éditeur de texte. Puis, il vous faudra exécuter le code encore et encore, sans obtenir de retour d’information sur les raisons pour lesquelles cela fonctionne ou non. Regex101.com élimine le mystère.
Regex101.com facilite la construction d’expressions, la recherche d’erreurs et même l’apprentissage en cours de route. Il rend également très facile la recherche d’un token ou d’un caractère dans les expressions régulières. La « Référence rapide » est toujours présente, à moins que vous ne la minimisiez. Elle vous permet donc de rechercher n’importe quel jeton ou caractère dont vous avez besoin.
Enfin, Regex101.com vous permet de choisir la « saveur » ou la version des expressions régulières que vous souhaitez utiliser. Pourquoi voudriez-vous faire cela ? Eh bien, vous pourriez avoir besoin d’intégrer votre expression régulière dans un certain nombre d’autres langages de programmation tels que Python, C, Golang, etc. Regex101.com vous permet de modifier la version de l’environnement de test que vous utilisez. Elle génère même le code dans ce langage pour que vous puissiez l’utiliser dans d’autres projets.
Dans quelle mesure regex101 émule-t-il les moteurs ?
Pour PCRE, regex101 compile sa bibliothèque à partir de la bibliothèque PCRE 16 bits. Alors que PHP utilise la bibliothèque PCRE 8 bits, il y a donc des différences en mode non-UTF. Des différences dans l’implémentation des fonctions causent également d’autres divergences . Parmi elles, il y a la fonctionnalité de la correspondance et de remplacement de regex101 et de PHP.
Pour JavaScript, regex101 utilise le moteur regex du navigateur. Vous pouvez donc voir des résultats différents sur différents navigateurs pour le même cas de test.
Pour Python, regex101 l’implémente au-dessus de la bibliothèque PCRE, en supprimant les fonctionnalités non disponibles dans Python. Cependant, il existe des différences mineures qui n’ont pas été aplanies.
Un autre site sympa pour visualiser les expressions régulières:
extendsclass.com/regex-tester.html