飞快移动中多个单词的完全匹配

时间:2013-06-24 20:44:44

标签: python whoosh

默认情况下,多字搜索会拆分为分别包含每个字的文件。如何覆盖此默认值并且搜索完全匹配?即使它最有可能得到支持,我也无法在google / whoosh文档中找到。

此外,搜索精确匹配的性能是否优于相同的多字搜索?

1 个答案:

答案 0 :(得分:1)

使用phrase queries(即在您的查询中要匹配的字词周围加上双引号),例如:

"to be or not to be"

但是,只有在您搜索的字段属于whoosh.fields.TEXT类型时才会有效。

至于表演的事情,短语搜索必然比“经典搜索”慢。要进行短语搜索,首先需要检索包含您在查询中指定的所有术语的所有文档(这是“经典搜索”部分),然后比较查询和文档之间的术语位置检查它是否匹配。