Texte 🔒 Fonctionne dans votre navigateur — aucune donnée envoyée

Rechercher et remplacer par regex

Réécrivez un texte avec une expression régulière et voyez le résultat avant de l'appliquer à de vrais fichiers.

/ /
Texte de test
Correspondances et groupes
Les correspondances s'affichent ici...

Rechercher et remplacer par regex en ligne

Rechercher-remplacer avec une expression régulière est l'un des moyens les plus rapides de nettoyer un texte, et l'un des plus faciles pour en abîmer mille lignes d'un coup. Cette page ouvre le testeur de regex avec un exemple fonctionnel : le motif Mot répété de la Bibliothèque de motifs, \b(\w+)\s+\1\b, et le remplacement $1. La phrase d'exemple réapparaît sous Résultat du remplacement, débarrassée de chaque mot en double.

Comment fonctionne l'exemple

(\w+) capture un mot, \s+ correspond à l'espace ou au saut de ligne qui suit, et \1 exige de nouveau le même mot. Le \b à chaque extrémité l'empêche de correspondre à l'intérieur de mots plus longs, si bien que "the theory" n'est pas touché. Avec le drapeau i, "This this" compte comme une répétition, et $1 garde la première graphie : "This this is a a typo" devient "This is a typo".

Jetons de remplacement

JetonInsère
$1, $2Le texte de ce groupe numéroté
$<name>Le texte d'un groupe nommé, comme (?<year>\d{4})
$&Toute la correspondance
$`Tout ce qui précède la correspondance
$'Tout ce qui suit la correspondance
$$Un signe dollar littéral

Tester avant de remplacer en masse

La plupart des catastrophes de remplacement viennent d'un motif qui correspond à plus que prévu. Collez un échantillon représentatif, y compris des lignes qui ne doivent pas changer, et lisez les correspondances surlignées avant de vous fier au résultat. Deux pièges sont fréquents : un .* gourmand va jusqu'à la dernière correspondance possible de la ligne, et sans le drapeau g seule la première correspondance est remplacée.

Les mots dans d'autres écritures

En JavaScript, \w et \b ne connaissent que les lettres A à Z, les chiffres et le tiret bas : l'exemple manque donc un "café" répété ou un mot persan répété. Avec les drapeaux giu, le motif (?<![\p{L}\p{N}_])([\p{L}\p{N}_]+)\s+\1(?![\p{L}\p{N}_]) fait le même travail dans n'importe quel alphabet.

Pages associées

Le testeur de regex JavaScript explique les drapeaux et le moteur derrière cette page, et la regex d'URL est un bon motif pour les remplacements, par exemple pour transformer des liens bruts en Markdown avec [$&]($&). L'outil complet, avec ses 15 motifs prêts à l'emploi, est le testeur de regex.

Guides associés