我希望排除停用词,除非搜索词位于双引号内
例如。 “就像那样”也应该搜索“那个”。
这可能吗?
这取决于您正在查询的字段的配置。
如果索引分析器的配置包含 StopFilterFactory,则停用词根本不会被索引,因此您以后无法查询它们。但由于 Solr 保留索引中术语的位置,因此您可以指示它增加剩余术语的位置值,以反映最初之间存在其他术语的事实。
这里的“enablePositionIncrements”是实现这一目标的关键:
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true"/>
如果查询分析器也配置了具有相同设置的 StopFilterFactory,则您的查询应该按预期工作。
请参阅此链接了解详细信息:http://www.lucidimagination.com/search/document/CDRG_ch05_5.6.18 http://www.lucidimagination.com/search/document/CDRG_ch05_5.6.18
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)