【发布时间】:2018-07-10 06:15:41
【问题描述】:
如何在 solr 中搜索准确的短语。假设,当我搜索“How_to_Search_this”时,它应该给我
的结果
1.“how_to_search_this”(不区分大小写)
2.“如何搜索这个”
但不是这样的结果
1.“How_to_search_this_thing”
2. “How_to_search_that_thing”
请帮忙。谢谢!
【问题讨论】:
如何在 solr 中搜索准确的短语。假设,当我搜索“How_to_Search_this”时,它应该给我
的结果
1.“how_to_search_this”(不区分大小写)
2.“如何搜索这个”
但不是这样的结果
1.“How_to_search_this_thing”
2. “How_to_search_that_thing”
请帮忙。谢谢!
【问题讨论】:
只获取精确的小写匹配项,使用 KeywordTokenizer。 KeywordTokenizer 将输入字符串保留为单个标记,但 string 的作用相同,KeywordTokenizer 也允许您附加过滤器。
<fieldType name="string_ci" class="solr.TextField" sortMissingLast="true" omitNorms="true">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory" />
</analyzer>
</fieldType>
这只会在查询值与索引值相同时为您提供命中,除了大小写。
【讨论】:
copyField 将相同的内容索引到多个字段中。