Testeur de Regex

Testez des expressions régulières JavaScript sur un texte d'exemple, inspeсtez les groupes capturants et les groupes nommés, et prévisualisez la sortie de remplacement localement dans votre navigateur.

Tous les tests de regex s'exécutent localement dans votre navigateur. Le pattern actuel, les flags, le remplacement et le texte d'exemple sont stockés dans le hash de l'URL pour partage via copier-coller.
0 car.
N'incluez pas les barres obliques englobantes
Flagsg

Flags supportés : global, ignore case, multiline, dotAll, unicode et sticky.

Optionnel : utilisez $1 ou $<name> pour les groupes

Exemples rapides

Tester des expressions régulières JavaScript avec du texte d'exemple

Utilisez cet outil lorsque vous devez vérifier ce qu'une regex JavaScript correspond avant de l'intégrer dans du code frontend, Node.js ou TypeScript.

Collez le texte d'exemple, saisissez le motif sans barres obliques, choisissez les flags, puis consultez les correspondances, les groupes et l'aperçu du remplacement.

Ce que signifie chaque résultat

  • Correspondances mises en surbrillance montre où le motif a correspondant dans le texte d'exemple.
  • Correspondances et groupes énumère les plages de correspondance, les groupes numérotés et les groupes nommés.
  • Aperçu du remplacement prévisualise JavaScript String.replace() avec votre chaîne de remplacement.
  • Copier le JSON des correspondances copie les données structurées des correspondances. Copier le remplacement copie le texte de l'aperçu du remplacement.
  • Copier l'URL copie le motif actuel, les flags, le remplacement et le texte d'exemple dans le fragment d'URL.

Flags pris en charge

Flag Name Effect
g Global Trouver toutes les correspondances au lieu de seulement la première.
i Ignorer la casse Faire correspondre les lettres sans tenir compte de la casse.
m Multiline Make ^ and $ fonctionnent par ligne.
s DotAll Let . correspondre aux sauts de ligne.
u Unicode Utiliser des règles de correspondance compatibles Unicode.
y Sticky Correspondre uniquement à partir du dernierIndex JavaScript actuel lastIndex.

Limits

  • Ceci est un testeur JavaScript RegExp testeur, pas un testeur d'expressions régulières PCRE, Python, Java, SQL ou .NET.
  • Le texte d'exemple et les correspondances collectées sont limités pour garder la page réactive.
  • Certains motifs évidents avec quantificateurs imbriqués sont bloqués, mais il ne s'agit pas d'un analyseur complet ReDoS.
  • JavaScript ne fournit pas de timeout synchrone pour une exécution de regex.
  • Les fragments d'URL peuvent inclure le texte d'exemple collé. Supprimez les journaux privés ou les secrets avant de partager une URL copiée.

Questions fréquemment posées

Quelle syntaxe d'expression régulière cette page utilise-t-elle ?

Il utilise JavaScript RegExp syntaxe. Utilisez-la pour le travail sur regex dans le navigateur, Node.js et TypeScript. Les motifs écrits pour PCRE, Python, Java, SQL ou .NET peuvent se comporter différemment.

Pourquoi je ne vois qu'une seule correspondance ?

Ajoutez le g drapeau pour collecter toutes les correspondances. Sans g, JavaScript renvoie normalement la première correspondance.

Puis-je utiliser des groupes nommés dans les remplacements ?

Oui. Les groupes nommés tels que (?<level>ERROR|WARN) apparaissent dans les détails des correspondances et peuvent être réutilisés dans le texte de remplacement sous la forme $<level>.

Quelle est la différence entre Copier le JSON des correspondances et Copier le remplacement ?

Copier le JSON des correspondances copie les plages et les groupes sous forme de JSON. Copier le remplacement copie le texte produit par l'aperçu du remplacement.

Est-ce que cela peut détecter des motifs de backtracking dangereux ?

Partiellement seulement. L'outil bloque certains motifs évidents à quantificateurs imbriqués et limite la taille des entrées, mais ce n'est pas un analyseur complet ReDoS.