gpt4 book ai didi

Solr edismax 通配符搜索未找到原始字符串

转载 作者:行者123 更新时间:2023-12-04 14:49:25 35 4
gpt4 key购买 nike

我的 Solr 索引中有下一个内容:west indian cherrytext_en 类型的字段中(有关字段定义,请参见下文)。

当我用 cherr* 搜索时找到匹配。
同时搜索 cherri*匹配文档中的单词。
但是搜索cherry* 不是 比赛。

我怀疑 PorterStemFilterFactory 为此,但我不明白为什么(查询分析器与索引分析器相同)。

示例查询

/solr/select?defType=edismax&q=cherry*

配置文件
...
<fieldType name="text_en" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.EnglishPossessiveFilterFactory"/>
<filter class="solr.PorterStemFilterFactory"/>
</analyzer>
</fieldType>
...

现场分析

指数
org.apache.solr.analysis.StandardTokenizerFactory: cherry
org.apache.solr.analysis.LowerCaseFilterFactory: cherry
org.apache.solr.analysis.EnglishPossessiveFilterFactory: cherry
org.apache.solr.analysis.PorterStemFilterFactory: cherri <-- note the change from cherry to cherri

询问
org.apache.solr.analysis.StandardTokenizerFactory: cherry
org.apache.solr.analysis.LowerCaseFilterFactory: cherry
org.apache.solr.analysis.EnglishPossessiveFilterFactory: cherry
org.apache.solr.analysis.PorterStemFilterFactory: cherri

最佳答案

http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#Analyzers提到——

On wildcard and fuzzy searches, no text analysis is performed on the search word.



因此,搜索查询在查询期间不会进行任何分析。
因此,索引的术语将与搜索的术语不同。

由于索引项是 cherri ,搜索 cherry*不会匹配任何文件。

关于Solr edismax 通配符搜索未找到原始字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9412888/

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