gpt4 book ai didi

java - 当需要分析停用词时,如何使用 Lucene 忽略停用词搜索?

转载 作者:太空宇宙 更新时间:2023-11-04 11:29:41 25 4
gpt4 key购买 nike

如何在 Lucene 搜索过程中忽略停用词?

我已经使用自定义分析器分析了包括停用词在内的所有数据,因为这是大多数搜索的要求。

但在解决方案中,其中一个模块出现了另一个要求,即在已分析停止词的相同字段上从搜索中排除停止词。

分析时

@Fields({@Field(index = Index.YES, store = Store.NO, analyzer = @Analyzer(impl=CustomStopWordsAccepterAnalyzer.class)),

现在要求当搜索字符串包含“Love With Hubby”时忽略停用词,并使用 Love Hubby 返回最佳分数结果。请推荐!

最佳答案

一旦为字段启用停用词,停用词实际上不会在索引中编码,因此它们无法在查询期间重新出现。

您遇到的问题很常见,因为人们经常需要合并使用不同选项执行的多个全文查询的分数。

解决方案非常简单:对于 Java 实体的每个属性,使用多个 @Field 注释并为每个属性分配不同的索引字段名称。这样您就可以使用 BooleanQuery 定位每个不同的字段,并让输出的分数将这两个字段都考虑在内。

关于java - 当需要分析停用词时,如何使用 Lucene 忽略停用词搜索?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43928419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com