Testeur Regex
Tendance 🔥Tester les expressions régulières en direct
Comment utiliser Testeur Regex
- 1Entrez votre expression régulière
- 2Sélectionnez les drapeaux (g, i, m, s, u)
- 3Collez le texte de test
- 4Les correspondances sont surlignées en temps réel
À propos de Testeur Regex
Testeur de regex fournit un environnement en temps réel pour écrire, tester et déboguer des expressions régulières. Entrez votre modèle et votre chaîne de test, et toutes les correspondances sont surlignées instantanément pendant que vous tapez — pas besoin d'exécuter du code ou de recharger une page.
Les groupes de capture sont affichés séparément pour que vous puissiez inspecter exactement ce que chaque groupe a correspondus. Le testeur utilise le moteur JavaScript natif RegExp, qui est le même moteur utilisé dans Node.js et tous les principaux navigateurs.
Les modèles qui fonctionnent ici fonctionneront directement dans votre code JavaScript ou TypeScript.
Fonctionnalités clés de Testeur Regex
- Surbrillance des correspondances en temps réel pendant que vous tapez le modèle
- Affiche toutes les correspondances et leurs positions de début/fin
- Affiche les groupes de capture et groupes nommés séparément
- Prend en charge les drapeaux : g (global), i (insensible à la casse), m (multiline), s (dotAll), u (unicode)
- Nombre de correspondances affiché en évidence
- Fonctionne entièrement dans le navigateur en utilisant JavaScript RegExp
- Sidebar d'explication de modèle pour comprendre chaque partie du regex
- Compatible avec Node.js et tous les principaux runtimes JavaScript
Exemples
Valider un format d'adresse email
Tester un modèle regex qui correspond aux formats d'adresse email standard.
Entrée
Modèle: ^[\w.-]+@[\w.-]+\.[a-zA-Z]{2,}$ | Test: user@example.com et invalid-emailSortie
user@example.com — 1 correspondance | invalid-email — 0 correspondance
Extraire toutes les URL d'un bloc de texte
Utiliser un modèle global pour trouver toutes les URL HTTP/HTTPS dans une chaîne de texte.
Entrée
Modèle: https?://[^\s]+ (avec drapeau g) | Test: texte contenant plusieurs URL
Sortie
Toutes les URL surlignées, chacune affichée comme une correspondance séparée
Cas d'utilisation courants
- Test et itération sur les modèles de validation d'entrée (email, téléphone, code postal)
- Construction de modèles d'analyse de journaux pour extraire des données structurées des lignes de journal
- Écriture de modèles de recherche et remplacement pour les éditeurs de code et les scripts
- Apprentissage de la syntaxe des expressions régulières de manière interactive avec un retour immédiat
- Débogage des modèles regex qui se comportent différemment que prévu dans le code
- Extraction de champs spécifiques à partir de texte structuré comme des lignes CSV ou des lignes de configuration
Dépannage
Le modèle ne correspond à rien mais semble correct
Solution
Vérifiez que le drapeau global (g) est défini si vous attendez plusieurs correspondances. Sans le drapeau g, JavaScript ne trouve que la première correspondance.
Les barres obliques inversées dans le modèle ne fonctionnent pas
Solution
Dans les littéraux regex JavaScript, \d, \w, \s sont valides. Si vous collez depuis un littéral de chaîne qui utilisait des doubles barres obliques inversées, retirez la barre oblique inversée supplémentaire.
Regex cause le gel ou la non-réponse du navigateur
Solution
Un backtracking catastrophique peut se produire avec certains modèles — par exemple, des quantificateurs imbriqués comme (a+)+ sur une entrée non correspondante. Simplifiez le modèle ou testez avec des chaînes plus courtes.
Questions fréquemment posées
Quel moteur regex est utilisé ?
L'outil utilise le moteur JavaScript natif RegExp, compatible avec les lookaheads, lookbehinds, groupes de capture nommés et séquences d'échappement de propriété Unicode.
Quels drapeaux sont pris en charge ?
Global (g), insensible à la casse (i), multiline (m), dotAll (s) pour faire correspondre . aux sauts de ligne, et unicode (u) pour le support Unicode complet.
Comment faire correspondre un saut de ligne ?
Utilisez \n pour faire correspondre un caractère de saut de ligne. Activez le drapeau dotAll (s) pour que . corresponde également aux sauts de ligne.
Que sont les groupes de capture ?
Les groupes de capture sont des portions d'un modèle regex entre parenthèses. Par exemple, (\d{4})-(\d{2})-(\d{2}) sur "2023-11-14" capture "2023", "11" et "14".
Quelle est la différence entre un quantificateur gourmand et paresseux ?
Les quantificateurs gourmands (+, *) correspondent autant que possible. Les quantificateurs paresseux (+?, *?) correspondent aussi peu que possible.
Puis-je tester des modèles avec des caractères Unicode ?
Oui. Activez le drapeau unicode (u) pour utiliser les séquences d'échappement de propriété Unicode comme \p{Letter}.
Mes données sont-elles envoyées à un serveur ?
Non. Toute la correspondance regex est effectuée localement dans votre navigateur. Vos modèles et chaînes de test ne quittent jamais votre appareil.
Puis-je utiliser ce regex dans d'autres langages de programmation ?
JavaScript RegExp est similaire mais pas identique à Python, Java ou PCRE. Les fonctionnalités de base sont largement compatibles ; la syntaxe spécifique au langage nécessite un ajustement.