Я хочу искать несколько слов одновременно в текстовом файле.
Например, я хочу найти эти 3 слова: Majid,superuser,device
Обычно я должен искать их по одному, и я не могу искать их все одновременно. Поэтому я хочу искать эти слова одновременно в текстовом файле.
Я хочу ввести эти 3 слова в текстовый файл, по одному слову на строку. Назовем его SearchText. Теперь у меня есть Target Text, в котором я хочу искать эти слова. Назовем его TargetText.
Я хочу, чтобы приложение или что-то подобное извлекало слова из SearchText, находило их в TargetText и выделяло их или выдавало мне результат поиска.
Надеюсь, я понятно выразился. Так кто-нибудь может мне помочь?
решение1
grep "Majid|superuser|device" filename.txt
В Windows вам придется установитьCygwin,GnuWin32,UnxUtilsили похожие.
Если слова должны быть взяты из файла, вы можете написать скрипт оболочки для чтения этого файла и создания аргумента для grep
.
Смотрите такжеhttps://stackoverflow.com/questions/87350/what-are-good-grep-tool-for-windowsчто предполагает, что родной
findstr /C:"Majid superuser device" filename.txt
решение2
Будьте проще. На платформе Windows — используйте команды/инструменты Windows.
Я бы использовалfindstrследующее:
C:\some\directory>findstr "Устройство суперпользователя Majid" somefile
Нет необходимости вПоискТекстсуществовать при поиске по 3 ключевым словам - но вы можете сделать так:
C:\some\directory>блокнот SearchText.
Введите ключевые слова, разделенные CRLF. Сохраните файл и сделайте следующее:
C:\some\directory>findstr /g:SearchText somefile