Aller au contenu
Gratuit, sans inscription, dans ton navigateur

Testeur de regex : tester des expressions régulières en ligne

Avec le testeur de regex, tu peux tester des expressions régulières en ligne à l’aide du moteur JavaScript de ton navigateur. Les correspondances sont mises en évidence et listées avec leur position et leurs groupes de capture. Par exemple, \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b trouve 2 adresses e-mail dans un texte de contacts, avec leur nom et leur domaine. Ton motif et ton texte restent dans ton navigateur.

Créé par Jakub Martyniak

Tu déploies ce modèle ? Exécute ton application sur un VPS avec un accès root complet.

Saisie

//g

Résultat

Saisis un motif à gauche pour afficher les résultats.

Exemple de résultat

Voici un résultat dans le testeur Regex

Tu saisis un motif et un texte, et l’outil répertorie chaque correspondance avec sa position et ses groupes de capture. En mode remplacement, il affiche le texte modifié. L’exemple ci-dessous utilise des adresses fictives ; les correspondances dépendent de ton motif et de ton texte.

Exemple · Indicateur g (toutes les occurrences)

2 résultats

Saisie

Motif
\b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b
Le groupe 1 capture la partie avant le @, le groupe 2 le domaine.
Texte de test
info@example.com, support@example.org, no-at.example.net

Sortie

Résultat 1
info@example.com
Index 0 · Groupe 1 : info · Groupe 2 : example.com
Résultat 2
support@example.org
Index 18 · Groupe 1 : support · Groupe 2 : example.org
Remplacer par $1 [at] $2
info [at] example.com, support [at] example.org, no-at.example.net
L’adresse sans @ n’est pas reconnue et reste inchangée.

Pourquoi cet outil

Plus qu’un simple test de correspondance

Aperçu des principales fonctionnalités du testeur de regex.

Correspondances mises en évidence et comptées

Après une courte pause dans la saisie, l’outil compte toutes les correspondances et les met en évidence dans le résultat. S’il y en a beaucoup, il met en évidence les 1000 premières.

Suivi des groupes de capture

Chaque correspondance apparaît dans une liste avec sa position, suivie de ses groupes de capture numérotés et nommés.

Flags g, i, m, s et u

Active ou désactive les cinq flags à l’aide des cases à cocher : ils ont la même signification que dans le code JavaScript. g est activé par défaut.

Mode de remplacement

Remplace les correspondances avec String.prototype.replace() et $1, $2 pour les groupes de capture. Copie le résultat en un clic.

Protection contre le backtracking catastrophique

L’analyse s’exécute dans un Web Worker et s’interrompt après 1 seconde pour éviter qu’un motif comme (a+)+ ne bloque l’onglet.

Fonctionne uniquement dans le navigateur

Le motif et le texte de test sont traités uniquement côté client : rien n’est envoyé à un serveur.

Guide

Comment tester des expressions régulières en ligne

Du motif au résultat copié : comment utiliser le testeur de regex.

Étape 1

Choisir un mode

Sélectionne le mode « Rechercher des correspondances » ci-dessus pour vérifier les correspondances, ou « Remplacer » pour remplacer du texte.

Étape 2

Saisir un motif

Saisis ton expression régulière sans barres obliques dans le champ « Motif », ou clique sur « Charger un exemple » pour charger un motif d’adresse e-mail et un texte d’exemple.

Étape 3

Définir les flags

Active ou désactive les flags g, i, m, s et u à l’aide des cases à cocher. g est activé par défaut. Les flags actifs apparaissent après le motif, par exemple /g.

Étape 4

Insérer un texte de test

Colle ton texte dans le champ « Texte à tester ». Après une courte pause dans la saisie, les correspondances sont mises en évidence dans le résultat et comptées au-dessus.

Étape 5

Vérifier et copier les correspondances

La liste affiche chaque correspondance avec sa position et ses groupes de capture. Le bouton de copie te permet de copier toutes les correspondances, une par ligne.

Étape 6

Remplacer et copier le résultat

En mode « Remplacer », saisis le nouveau texte dans le champ « Remplacer par », avec $1, $2 pour les groupes de capture, puis copie le résultat à l’aide du bouton de copie.

Aide-mémoire

Aide-mémoire regex : les éléments essentiels

Une expression régulière (regex) est un motif de recherche dans du texte. Elle te permet de trouver, vérifier, extraire ou remplacer des chaînes comme des adresses e-mail, des dates ou des entrées de journal. Tu peux essayer directement ci-dessus ces éléments de la syntaxe JavaScript dans le testeur de regex.

TokenSignification
.N’importe quel caractère sauf un saut de ligne ; avec le flag s, les sauts de ligne aussi
\dUn chiffre de 0 à 9
\wCaractère de mot : uniquement A–Z, a–z, 0–9 et _, donc pas de lettres comme ä, é ou ñ
\sCaractère d’espacement, comme une espace, une tabulation ou un saut de ligne
\p{L}N’importe quelle lettre, y compris accentuée, uniquement avec le flag u
\bLimite de mot, par exemple \bRegex\b pour trouver exactement ce mot
^ $Début et fin du texte, ou de chaque ligne avec le flag m
[abc]Un des caractères a, b ou c
[^abc]N’importe quel caractère sauf a, b et c
a|ba ou b
* + ?Zéro ou plusieurs, une ou plusieurs, zéro ou une occurrence
{2,5}De deux à cinq répétitions
.*?Un ? ajouté rend le quantificateur non gourmand (lazy) : il correspond au moins de caractères possible
( … )Groupe de capture, affiché comme groupe 1, 2, etc. dans le testeur de regex
(?<name> … )Groupe de capture nommé, également affiché sous son nom dans le testeur de regex
(?: … )Groupe non capturant, par exemple pour les alternatives ou les quantificateurs
(?= … ) (?! … )Lookahead : uniquement si ce qui suit correspond ou ne correspond pas à …
\.Un antislash devant un caractère spécial permet de le traiter littéralement, par exemple \. pour un point

Découvrir plus

Autres outils

Comparer des textes en ligne (Diff Checker)

Compare en ligne deux textes, fichiers de configuration ou versions de code, repère les différences ligne par ligne et mot par mot, puis copie-les au format Unified Diff. Tout fonctionne dans ton navigateur.

Créé par Dimitri Heissler

Formateur JSON

Formate, minifie et valide du JSON avec coloration syntaxique, affichage des erreurs et téléchargement, entièrement dans ton navigateur.

Créé par Jakub Martyniak

Validateur YAML

Vérifie la syntaxe YAML et formate-la de manière normalisée ou convertis-la directement en JSON. Prend en charge plusieurs documents séparés par `---` (par ex. des manifestes Kubernetes), avec des erreurs indiquant précisément la ligne et la colonne. Fonctionne entièrement dans le navigateur.

Créé par Jakub Martyniak

Générateur Crontab

Crée des expressions Cron à l’aide d’un formulaire, avec des explications en allemand et un aperçu des prochaines exécutions, entièrement dans le navigateur.

Créé par Jakub Martyniak

Encodeur et décodeur d’URL

Encode et décode des URL et du texte en ligne : comparaison de encodeURIComponent, encodeURI et du format des formulaires, avec tableau des paramètres de requête et générateur de liens UTM. Fonctionne entièrement dans le navigateur.

Créé par Dimitri Heissler

Générateur .htaccess et générateur htpasswd

Crée des fichiers Apache .htaccess et .htpasswd en ligne : redirections 301, HTTPS, protection par mot de passe avec bcrypt, règles WordPress, pages d’erreur, mise en cache, GZIP et protection contre le hotlinking. Fonctionne entièrement dans le navigateur.

Créé par Dimitri Heissler

FAQ

Questions fréquentes sur le testeur de regex

Des réponses concises sur les expressions régulières et cet outil.

Une liste de toutes les correspondances avec leur position et leurs groupes de capture. Le motif \b([\w.-]+)@([\w-]+\.[a-zA-Z]{2,})\b trouve 2 correspondances dans le texte « info@example.com, support@example.org, no-at.example.net » : info@example.com à partir de l’indice 0 et support@example.org à partir de l’indice 18, avec le nom et le domaine dans les groupes 1 et 2. En mode remplacement, $1 [at] $2 donne « info [at] example.com, support [at] example.org, no-at.example.net ».

Oui. Le testeur de regex est gratuit et ne nécessite aucun compte : ouvre la page, saisis un motif et un texte à tester, puis vérifie les correspondances.

Non. L’analyse s’exécute dans ton navigateur, dans un Web Worker qui utilise son propre moteur RegExp. Rien n’est envoyé ni enregistré dans des journaux. C’est important, car les textes à tester contiennent souvent de vraies lignes de journal ou des adresses e-mail.

Le moteur JavaScript natif (ECMAScript) de ton navigateur, avec la même syntaxe regex qu’en JavaScript, TypeScript et Node.js. PCRE (PHP, Perl) et le module re de Python diffèrent sur certains points : \K n’existe pas en JavaScript, et les groupes nommés s’écrivent (?<name>…) plutôt que (?P<name>…).

g (global) renvoie toutes les correspondances et est activé par défaut. Sans g, l’outil se comporte comme RegExp.exec() et renvoie au maximum une correspondance. i ignore la casse, m permet à ^ et $ de correspondre au début et à la fin de chaque ligne, s permet au point de correspondre aussi aux sauts de ligne, et u active le mode Unicode, nécessaire par exemple pour \p{L}.

Passe en mode « Remplacer » et saisis le nouveau texte dans le champ « Remplacer par ». Utilise $1, $2, etc. pour insérer des groupes de capture et $<name> pour les groupes nommés. L’outil utilise String.prototype.replace() : sans le flag g, seule la première correspondance est remplacée. Copie le résultat à l’aide du bouton de copie.

Oui. Les groupes de capture figurent sous chaque correspondance : les groupes numérotés sous 1, 2, etc., et les groupes nommés comme (?<jahr>\d{4}) également sous leur nom. Si un groupe n’a rien capturé, « (aucune correspondance) » s’affiche.

Si le motif est invalide, par exemple si une parenthèse n’est pas fermée, l’outil affiche le message d’erreur du moteur du navigateur. Si l’analyse dure plus de 1 seconde, elle est interrompue : le motif est alors généralement sujet au backtracking catastrophique, par exemple à cause de quantificateurs imbriqués comme (a+)+. Simplifie le motif ou raccourcis le texte à tester.

Le nombre de correspondances est toujours exact. Seules les 1000 premières sont mises en évidence et les 200 premières sont listées, chacune avec sa position et ses groupes de capture. S’il y en a plus de 200, un message au-dessus du texte mis en évidence te l’indique.

D’autres questions ?

Contacter le support
Tu crées ton propre projet ?

Ton application a besoin d’un serveur fiable

Un VPS ZAP-Hosting met ton application ou ton projet en ligne de manière fiable.

4,4/5 Trustpilot32 000+ Serveurs actifsDepuis 2010

Sans configuration. Sans risque. En ligne en quelques secondes.

Durée flexibleRésiliable à tout momentEn ligne en 60 secondes

Tu cherches d’autres outils ? Voir tous les outils de développement