Aller au contenu
SPCXTools

Testeur Regex

Écrivez une expression régulière et visualisez chaque correspondance, groupe de capture et remplacement en direct.

Fonctionne en local — vos fichiers ne quittent pas votre appareil

Chargement de l’outil…

Comment utiliser : Testeur Regex

  1. 1Saisissez votre expression régulière dans le champ Expression — les slashes ne sont pas nécessaires.
  2. 2Choisissez des indicateurs (flags) comme g (toutes les correspondances), i (ignorer la casse) ou m (multiligne).
  3. 3Collez le texte à analyser dans Chaîne de test. Les correspondances sont instantanément surlignées et comptées.
  4. 4Consultez le tableau pour la position de chaque correspondance et ses groupes de capture.
  5. 5Cochez Remplacer et saisissez un remplacement comme $2: $1 pour prévisualiser le résultat de String.replace.

Testez vos expressions régulières avec des résultats en direct

Les expressions régulières sont puissantes mais réputées pour être difficiles à lire. Ce testeur de regex vous montre exactement ce que fait votre motif pendant que vous tapez : chaque correspondance est surlignée dans le texte, comptée et listée avec sa position et ses groupes de capture. Un aperçu du remplacement montre le résultat d'une recherche-remplacement avant que vous ne l'exécutiez dans votre code. Tout s'exécute localement dans votre navigateur, dans un worker en arrière-plan qui protège la page des motifs incontrôlables.

Fonctionnalités

  • Surlignage en direct de toutes les correspondances dans la chaîne de test.
  • Sélecteurs d'indicateurs pour g, i, m, s et u, avec l'expression littérale complète /motif/indicateurs affichée.
  • Tableau des correspondances avec l'index, les groupes de capture numérotés et les groupes nommés.
  • Aperçu du remplacement prenant en charge $1, $<nom>, $& et d'autres motifs de remplacement.
  • Messages d'erreur clairs pour la syntaxe invalide, et un délai de sécurité d'une seconde contre le backtracking catastrophique.

Usages pratiques

Validation d'entrées. Créez et testez des motifs pour des codes postaux, des codes produit ou des noms d'utilisateur sur une liste d'exemples valides et invalides avant de les ajouter à un formulaire.

Extraction de données. Extrayez des adresses e-mail, des URL, des dates ou des identifiants de journaux (logs) et de documents. Les groupes de capture vous permettent de diviser chaque correspondance en plusieurs parties, comme l'utilisateur et le domaine.

Rechercher et remplacer. Reformatez des dates de JJ/MM/AAAA à AAAA-MM-JJ, renommez des variables ou nettoyez des données exportées. Prévisualisez le remplacement ici, puis utilisez le même motif dans votre éditeur ou votre script.

Apprendre les regex. Expérimentez avec les quantificateurs, les classes de caractères et les ancres, et voyez l'effet instantanément.

Aide-mémoire

Syntaxe Signification
. N'importe quel caractère sauf un saut de ligne (n'importe quel caractère avec s)
\d \w \s Chiffre, caractère de mot, espace
[abc] [^abc] Un des / aucun des caractères listés
* + ? 0 ou plus, 1 ou plus, 0 ou 1
{2,5} Entre 2 et 5 fois
^ $ Début et fin du texte (de chaque ligne avec m)
(…) (?<nom>…) Groupe de capture, groupe nommé
(?:…) Groupe sans capture
(?=…) (?!…) Lookahead, lookahead négatif
\b Limite de mot

Les quantificateurs sont gourmands (greedy) par défaut ; ajoutez ? (comme dans .*?) pour les rendre paresseux (lazy). Pour nettoyer des listes par la suite, essayez Supprimer les lignes en double, ou comparez l'avant et l'après avec le Comparateur de texte.

Questions fréquentes

Quel moteur d'expressions régulières ce testeur utilise-t-il ?
Il utilise le moteur d'expressions régulières JavaScript (ECMAScript) de votre navigateur — le même que celui utilisé par Node.js, Deno et le code front-end. La plupart de la syntaxe est commune avec PCRE, Python et Java, mais certaines fonctionnalités diffèrent, comme les quantificateurs possessifs (non pris en charge) et le lookbehind (pris en charge par les navigateurs modernes).
Pourquoi mon expression régulière ne trouve-t-elle qu'une seule correspondance ?
Sans l'indicateur g (global), JavaScript s'arrête à la première correspondance. Activez g pour trouver toutes les correspondances dans le texte.
Comment faire référence aux groupes de capture dans le remplacement ?
Utilisez $1, $2, etc. pour les groupes numérotés, $<nom> pour les groupes nommés comme (?<annee>\d{4}), $& pour la correspondance entière, et $$ pour un signe dollar littéral.
Que se passe-t-il si mon expression régulière est extrêmement lente ?
Certains motifs, comme (a+)+$, peuvent prendre un temps exponentiel sur certaines entrées (« backtracking catastrophique »). Le testeur exécute votre expression dans un worker en arrière-plan et l'arrête au bout d'une seconde, pour que la page ne se bloque jamais. Réécrivez le motif pour éviter les quantificateurs imbriqués.
À quoi servent les indicateurs s et u ?
L'indicateur s (dotAll) permet au . de correspondre aussi aux sauts de ligne. L'indicateur u (unicode) traite le motif et le texte comme des points de code Unicode, ce qui est nécessaire pour les emojis et pour les séquences d'échappement de propriété \p{…} comme \p{L} (n'importe quelle lettre).
Mon texte est-il envoyé sur un serveur ?
Non. La recherche de correspondances et le remplacement s'exécutent localement dans votre navigateur.