Удалить дублирующиеся строки в Notepad++
Я пытался найти способ удалить дублированные строки в Notepad++ (не удаляя дублированные строки). Например, если у меня есть текст:
Любимое мороженое Алисы (не мороженое): Ваниль! Любимое мороженое Алисы (не мороженое): Ваниль! Пожалуйста, принесите мороженое из магазина
Результат должен быть
Любимое мороженое Алисы (не мороженое): Ваниль! Пожалуйста, принесите мороженое из магазина
Я попытался найти несколько примеров и нашел это, но на самом деле это не работает так, как ожидалось. Заранее спасибо.
1 ответ
Если у вас есть последовательные дубликаты, вы можете использовать регулярное выражение, как это:
(.*)\1
И используйте строку замены: \1
или же $1
как вы можете видеть в substitution section
на скриншоте.
Обновление: как 1010 указал в этом комментарии:
имейте в виду, что он может совпадать с дубликатами, такими как "o" в "look", или частями предложения, которые повторяют символы, как в "... это дубликат"
Вы можете предотвратить это, создав ограничение для минимальных дублированных символов. Например, это регулярное выражение ищет дублированные символы, которые будут содержать не менее 5 дублированных символов (вы можете изменить число так, как считаете нужным):
(.{5,})\1
У меня была аналогичная проблема, и я хотел удалить повторяющиеся строки. Оказывается, для этого уже есть встроенная функция.
Просто перейдите в "Правка-> Операции с линиями-> Удалить последовательные повторяющиеся линии".