Regex untuk mencari kata duplikat

Gunakan /\b(\w+)\s+\1\b/gi dengan fitur cari dan ganti. Setiap contoh di bawah sudah diuji dengan pola ini, dan kamu bisa membukanya di Regex Tester dengan contoh teks yang sudah terisi.

Diperbarui

/\b(\w+)\s+\1\b/gi
Buka di Regex Tester

Sebelum

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

Sesudah (ganti dengan "$1")

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

Cara kerja pola ini

BagianArti
\b(\w+)Satu kata utuh, ditangkap sebagai grup 1
\s+Spasi
\1\bBackreference: kata yang sama lagi
i flag“The the” dihitung sebagai duplikat
→ $1Diganti dengan satu salinan saja

Contoh kode

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);

Catatan dan batasan

Sangat membantu untuk proofreading. Beberapa pengulangan memang disengaja (“had had”, “that that”), jadi periksa dulu hasil yang cocok sebelum mengganti semuanya.

Pertanyaan yang sering diajukan

Apa regex untuk mencari kata duplikat?
/\b(\w+)\s+\1\b/gi — dipakai dengan fitur cari dan ganti. Lihat tabel di atas untuk fungsi tiap bagiannya.
Apakah bisa dipakai di Python dan PHP?
Bisa — contoh kode di atas memakai pola yang sama dengan re di Python dan fungsi preg di PHP.
Bagaimana cara menguji regex ini?
Klik “Buka di Regex Tester” — pola, flag, dan teks contoh akan termuat otomatis, dan kecocokan akan disorot saat kamu mengedit.