默认情况下,多字搜索会拆分为分别包含每个字的文件。如何覆盖此默认值并且搜索完全匹配?即使它最有可能得到支持,我也无法在google / whoosh文档中找到。
此外,搜索精确匹配的性能是否优于相同的多字搜索?
答案 0 :(得分:1)
使用phrase queries(即在您的查询中要匹配的字词周围加上双引号),例如:
"to be or not to be"
但是,只有在您搜索的字段属于whoosh.fields.TEXT
类型时才会有效。
至于表演的事情,短语搜索必然比“经典搜索”慢。要进行短语搜索,首先需要检索包含您在查询中指定的所有术语的所有文档(这是“经典搜索”部分),然后比较查询和文档之间的术语位置检查它是否匹配。