gpt4 book ai didi

Solr 查询/字段分析器

转载 作者:行者123 更新时间:2023-12-04 10:21:46 25 4
gpt4 key购买 nike

我是 Solr 的初学者,并且遇到了不需要的字符进入查询结果的问题。例如,当我搜索“foo bar”时,我得到了“'foo' bar”等内容。我只想精确匹配。据我所知,这可以在 schema.xml 文件中设置。
我的内容字段类型:

<fieldtype name="textNoStem" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<filter class="solr.LowerCaseFilterFactory" />
<tokenizer class="solr.KeywordTokenizerFactory" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory" />
<filter class="solr.LowerCaseFilterFactory" />
</analyzer>
</fieldtype>

如果您知道解决方案,请告诉我。
亲切的问候。

最佳答案

对于这两个分析器,第一行应该是分词器。分词器用于将文本拆分为更小的单元(大多数情况下是单词)。为了您的需要,WhitespaceTokenizerFactory大概是正确的选择。

如果您想要绝对精确匹配,则在分词器之后不需要任何过滤器。但是如果你不希望搜索区分大小写,你需要添加一个 LowerCaseFilterFactory .

请注意,您有两个分析器:一个是“索引”类型,另一个是“查询”类型。顾名思义,第一个用于索引内容,而另一个用于查询。几乎总是好的规则是为两个分析器使用相同的标记器/过滤器集。

关于Solr 查询/字段分析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3545684/

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