Regex zum Finden doppelter Wörter

Verwende /\b(\w+)\s+\1\b/gi mit Suchen und Ersetzen. Jedes Beispiel unten ist gegen das Muster getestet, und du kannst es mit vorgeladenen Beispielen im Regex-Tester öffnen.

Aktualisiert am

/\b(\w+)\s+\1\b/gi
Im Regex-Tester öffnen

Vorher

This is is a test of the the duplicate finder. The the end.

Nachher (ersetzen mit "$1")

This is a test of the duplicate finder. The end.

So funktioniert das Muster

TeilBedeutung
\b(\w+)Ein ganzes Wort, erfasst als Gruppe 1
\s+Leerraum (Whitespace)
\1\bRückverweis: genau dasselbe Wort noch einmal
i flag„The the“ zählt als Dublette
→ $1Wird durch eine einzelne Kopie ersetzt

Codebeispiele

JavaScript

const out = text.replace(/\b(\w+)\s+\1\b/gi, "$1");

Python

import re

out = re.sub(r'\b(\w+)\s+\1\b', r'\1', text, flags=re.I)

PHP

$out = preg_replace('/\b(\w+)\s+\1\b/i', '$1', $text);

Hinweise und Einschränkungen

Ideal zum Korrekturlesen. Manche Wiederholungen sind beabsichtigt („had had“, „that that“), also prüfe die Treffer, bevor du alle ersetzt.

Häufige Fragen

Wie lautet der Regex, um doppelte Wörter zu finden?
/\b(\w+)\s+\1\b/gi — er wird mit Suchen und Ersetzen verwendet. Die Tabelle oben zeigt, was jeder Teil macht.
Funktioniert das auch in Python und PHP?
Ja — die Codebeispiele oben verwenden dasselbe Muster mit re in Python und preg-Funktionen in PHP.
Wie kann ich diesen Regex testen?
Klicke auf „Im Regex-Tester öffnen“ — Muster, Flags und Beispieltext werden automatisch geladen, und Treffer werden beim Bearbeiten hervorgehoben.