Я не уверен, что вы спрашиваете.Как уже говорили другие, будет сложно удалить все дубликаты.Но если вы просто хотите, чтобы слова содержали только дубликаты (например, вы хотите изменить «один» на «один», но оставить «все один» как есть), самое простое, что нужно сделать, это проверить слова с четнымколичество букв, где вторая половина совпадает с первой половиной.
Разделите текст на слова, и для каждого слова сделайте что-то вроде
$length = strlen($word);
if (! $length % 2 && substr($word, 0, $length / 2) == substr($word, ($length / 2) + 1, $length /2))
$word = substr($word, 0, $length / 2);