В Textpad или Notepad ++ есть ли возможность экспортировать все совпадения для поиска по регулярному выражению в виде одного списка?
В большом текстовом файле я ищу теги (слова, заключенные в%%), используя регулярное выражение %\< and \>%
, и хочу, чтобы все совпадения были представлены в виде одного списка, чтобы я мог удалить дубликаты с помощью Excel и получить список уникальных тегов.
Ответы:
Вы можете достичь этого, используя функции Backreferences и Find and Mark в Notepad ++.
Найдите совпадения с помощью регулярных выражений (скажем
%(.*?)%
) и замените их\n%\1%\n
, после этого у нас будет целевое слово в отдельных строках (т.е. ни в одной строке не будет более одного совпавшего слова)Используйте функцию Поиск -> Найти -> Пометить, чтобы пометить каждую строку регулярным выражением,
%(.*?)%
и не забудьте поставить галочку « Строка закладки », прежде чем отмечать текстисточник
Является ли это в Notepad ++ обязательным требованием? Вы на Windows или какой-то форме Unix? Если вы работаете в Windows, вы можете сделать это (частично) из командной строки:
findstr
вдохновлено смутноgrep
, поэтому этот новый_файл будет содержать все строки, соответствующие вашим критериям поиска; затем вы можете использовать Notepad ++ для удаления нежелательного текста (слева от первого% и справа от второго).И, конечно, если вы работаете в Unix, вы можете выполнить аналогичную задачу с
sed
.источник
Существует плагин Notepad ++, который может копировать совпадающее выражение регулярного выражения в новый файл на новой вкладке. REGEXEXTRACT
Редактировать диалог ввода с учетом вопроса
На картинке вы можете увидеть, как заполнить диалог. Я предполагаю, что слово не содержит пробелов и т. Д., Только символы, совпадающие с \ w. В частности:
источник
В TextPad вы,
Find
как обычно, вызываете окно, а затем используетеMark All
кнопку.Оттуда используйте
Copy Bookmarked Lines
функцию. (Меню «Правка»> «Копировать другие»> «Линии с закладками».)источник