在Solr中搜索精确短语时,有没有办法包含停用词?

Rut*_*uth 11 search solr

我希望排除停用词,除非搜索词在双引号内

例如."就像那样"也应该搜索"那个".

这可能吗?

Pas*_*imo 16

这取决于您要查询的字段的配置.

如果索引分析器的配置包含StopFilterFactory,则不会对停用词进行索引,因此您无法在以后查询它们.但是,由于Solr的保持在指数术语的位置,你可以命令它来增加其余条款的位置值,以反映原来,有在两者之间其他方面的事实.

这里的"enablePositionIncrements"是实现这一目标的关键:

<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true"/>
Run Code Online (Sandbox Code Playgroud)

如果查询分析器还配置了具有相同设置的StopFilterFactory,则查询应按预期工作.

有关详细信息,请参阅此链接:http: //www.lucidimagination.com/search/document/CDRG_ch05_5.6.18