我有一堆文件在一個文件夾中。假設我將全部轉換爲純文本文件。蟒蛇 - 複雜布爾搜索文件中的單詞
我想使用Python這樣執行搜索:
query = '(word1 and word2) or (word3 and not word4)'
實際logc變化,多個單詞可以一起使用。另一個例子:
query = '(shiny and glass and "blue car")'
此外,單詞由用戶提供,所以他們是變量。
我想顯示匹配的句子和文件名。 這實際上並不需要像whoosh或乾草堆這樣的複雜搜索引擎,它們需要使用字段對文件進行索引。 另外,這些工具似乎沒有布爾查詢,正如我上面所解釋的。 我遇到過pdfquery
庫,它完全符合我對pdf的要求,但是現在我需要它來獲取文本文件和xml文件。
有什麼建議嗎?
是已知的安全性查詢嗎? 'eval'將在這裏提供一個簡單的輸出,但是如果這是用戶輸入,那麼它非常危險 –
這個查詢是否應該用舊式搜索引擎式語義來解釋,其中'word'隱含意味着「'word」在文件」? – user2357112
用戶可以鍵入單詞和語義(AND,OR,NOT,括號)。 – max