Очень простое регулярное выражение для удаления дубликатов слов из текста:
$str = 'Текст, содержащий дубликаты слов'; $str = preg_replace("#s(w+s)1#siu", "$1", $str); echo $str;
Источник: https://www.kobzarev.com/programming/remove-duplicate-words-from-text/