У меня есть текстовый файл (A.txt) с 20 000 доменных имен, по одному в строке. У меня есть еще один текстовый файл (B.txt), содержащий тысячи записей Whois, скомпилированных вместе. Я хочу увидеть, какие домены в A.txt не указаны в B.txt. Это тривиально сделать один за другим, но как я могу сделать это массово? Спасибо
Массовая перекрестная ссылка в Notepad++
- Использует электронные таблицы/Excel вопроса? 22.03.2013
Ответы:
Вы можете отредактировать файл A.txt, чтобы он содержал строки в стиле example.com A other stuff
, а файл B.txt — чтобы он содержал строки в формате example.com B other stuff
. Затем отсортируйте два файла вместе. Затем запустите замену регулярного выражения Notepad++, найдите ^([^ ]+) A .*\r\n(\1 B )
и замените на \2
. В результате любая строка A.txt, соответствующая строке B.txt, удаляется, оставляя строку B.txt. Если есть несколько строк A.txt, которые соответствуют одной строке B.txt, запустите замену два или более раз, пока строки не будут заменены. Наконец, удалите строки B.txt (используйте регулярное выражение, чтобы найти и отметить строки, ищущие ^([^ ]+) B
, а затем удалите строки с закладками), оставив несопоставленные строки A.txt
.
Не зная формата исходных файлов A.txt и B.txt, я не могу предложить регулярное выражение для размещения URL-адреса, за которым следует A или B в начале строк.