У меня есть куча файлов в папке. Предположим, я конвертирую все в текстовые файлы.python - сложный логический поиск слов в файлах
Я хочу использовать Python для выполнения поиска, как это:
query = '(word1 and word2) or (word3 and not word4)'
фактическая logc меняется, и несколько слов могут быть использованы вместе. Другой пример:
query = '(shiny and glass and "blue car")'
Также слова предоставлены пользователями, поэтому они являются переменными.
Я хочу показать предложения, которые соответствуют и имена файлов. Это действительно не требует сложной поисковой системы, такой как whoosh или haystack, которые должны индексировать файлы с полями. Кроме того, эти инструменты, похоже, не имеют логического запроса, как я объяснил выше. Я столкнулся с библиотекой pdfquery
, которая делает именно то, что я хочу для PDF-файлов, но теперь мне это нужно для текстовых файлов и xml-файлов.
Любые предложения?
- это вопрос, который, как известно, безопасен? 'eval' предоставит вам простоту, но если это пользовательский ввод, это чрезвычайно опасно. –
. Этот запрос должен интерпретироваться с помощью семантики, подобной поисковой системе старой школы, где слово« слово »подразумевает« слово »в документ"? – user2357112
Пользователь вводит слова и семантику (AND, OR, NOT, круглые скобки). – max