Solr Stopwords删除案例

时间:2015-08-06 05:54:11

标签: solr stop-words

是否存在任何Solr配置,当搜索词只是一个停用词时,它不会将其视为停用词并找到相关文档。 e.g。

  • 如果查询 alpha和beta ,则将其视为 alpha beta
  • 如果查询为,则将其视为(因为查询包含 只有停止字/ s)

暂时我不会考虑完全匹配的短语。

1 个答案:

答案 0 :(得分:3)

使用两个字段 - 一个删除了停用词,另一个保留了所有令牌。这将允许您给予不同的命中不同的权重(意味着 存在的停用词的字段中的命中可以加权低于停用词已被移除的命中)。

您可以通过两个不同的字段定义(text_with_stopwordstext_without_stopwords)和不同的分析器链来实现此目的。

使用qf=text_wosw^2 text_wsw以不同方式查询和加权字段,并使用copyField指令将相同内容编入两个字段。

Solr无法做到"如果此字段中没有点击,则在此字段中搜索"因此,如果您希望单独执行搜索,则必须在应用程序中处理该搜索(如果字段中没有停用词的第一个查询没有给出任何匹配,请对其进行查询另一个领域)。