Testeur de regex

Correspondances regex JavaScript en direct, avec groupes, aperçu du remplacement et garde-fou contre le backtracking.

Fonctionne en local · aucun envoi
0 matches
Library
Test text

Ce que fait l’outil

Saisissez un motif : chaque correspondance est surlignée dans le texte de test au fil de la frappe. L’onglet Correspondances liste chaque correspondance avec son index, ses groupes de capture numérotés et ses groupes nommés (avec leurs positions). Remplacer donne un aperçu des substitutions $1, $<name> et $&, et Code vous fournit des extraits JavaScript et C# prêts à coller.

  • Activez ou désactivez les drapeaux g i m s u y, ainsi que d et v si votre navigateur les prend en charge.
  • Cliquez sur un motif de la bibliothèque (e-mail, URL, GUID, IPv4, date ISO, semver, couleur hex…) pour partir d’une regex éprouvée.
  • Les erreurs de syntaxe affichent le message du moteur et, lorsqu’elle peut être déterminée, la position dans le motif.
  • La recherche s’exécute dans un Web Worker avec une limite de temps : un motif comme (a+)+$ s’arrête avec un message clair au lieu de figer l’onglet.

Regex JavaScript et .NET

  • Les drapeaux correspondent à RegexOptions : i = IgnoreCase, m = Multiline, s = Singleline. Il n’y a pas de g en .NET : appelez Matches() au lieu de Match(). y, u et v n’ont pas d’option directe.
  • Les groupes nommés s’écrivent (?<name>...) dans les deux ; .NET accepte aussi (?'name'...). Dans les remplacements, JavaScript écrit $<name> et .NET ${name}.
  • Le lookbehind (?<=...) / (?<!...) fonctionne dans les deux. Parmi les fonctions propres à .NET figurent les groupes d’équilibrage, les ancres \A / \z, les options en ligne (?x) et RightToLeft.
  • En .NET, \d correspond à tout chiffre Unicode, sauf si vous passez RegexOptions.ECMAScript ; en JavaScript, il vaut toujours [0-9].

Confidentialité

Votre motif et votre texte restent dans votre navigateur et ne sont enregistrés que dans le stockage local, pour qu’un rechargement conserve votre travail.