Top.Mail.Ru
Ответы

Notepad++ удаление повторяющихся строк которые я выделил

В интернете много постов на тему как удалить повторяющиеся строки в notepad++. Но я не нашёл ответа как это сделать тока с теми строками, которые я выделил. Может кто подсказать как это сделать?

Дополнен

В общем сданной проблемой мне никто не смог помочь, пришлось всё делать руками.
Тему закрываю!

По дате
По рейтингу
Аватар пользователя
Новичок
10мес

Лично мне хватает Ctrl + H и знания механизма регулярных выражений.
т.е. Открываешь окно замены, ставишь галочку регулярных выражений, и просто через знак или - "|" перечисляешь все строки которые нужно заменить на пустое место.

Но также есть возможность использования макросов, скриптов, расширений.

Аватар пользователя
Гуру
10мес

В меню Операций со строками (Line Operation) есть пункт удаления дубликатов строк. И ничего помечать не надо.

Аватар пользователя
10мес

Если ты их выделил как закладки, то можно ПКМ кликнуть по значку закладки и в контекстном меню выбрать удаление всех помеченных строк.

Аватар пользователя
Мыслитель
10мес

В Notepad++ нет встроенной функции для удаления повторяющихся строк только в выделенной области. Однако, можно использовать сценарий на языке PythonScript или плагин для выполнения этой задачи.

Вот один из вариантов через плагин PythonScript:

1. Установите плагин PythonScript через Plugins > Plugin Admin.
2. После установки выберите Plugins > PythonScript > Show Console.
3. В открывшейся консоли вставьте следующий код:

editor = notepad.getCurrentEditor()

start = editor.getSelectionStart()
end = editor.getSelectionEnd()

text = editor.getTextRange(start, end)
lines = text.splitlines()

unique_lines = []
[unique_lines.append(line) for line in lines if line not in unique_lines]

editor.replaceSelection("\n".join(unique_lines))
4. Этот код удалит все повторяющиеся строки в выделенной области.

Если вам не подходит использование скриптов, попробуйте вручную скопировать выделенный текст в новый документ, удалить там дубликаты (например, через TextFX плагин), а затем вернуть текст обратно.