【发布时间】:2014-08-05 00:14:18
【问题描述】:
为了进行子字符串搜索,我添加了一个新的 fieldType - 带有 NgramFilter 的“Text”。
它工作得很好,但缺点是这个问题
例子
name = ['Apple','Samy','And','a']
当我搜索name:a 时,上述所有项目都会被拉起。即使搜索更改为“应用程序”。以上所有项目都被拉出。我该如何解决这个问题?
<fieldType name="text" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.EdgeNGramFilterFactory" minGramSize="1" maxGramSize="100" />
</analyzer>
</fieldType>
【问题讨论】:
-
是否所有值都为同一个文档编入索引(从您的描述中不清楚)?现场分析显示什么? (在/admin下,选择核心和分析)
-
您的意思是从管理文件夹或管理控制台获取它...?
-
通过网络界面。它可以让您准确了解 Solr 对索引值和查询值的作用。
-
我去了 solr admin/analysis...给我的字段名称“name”和几个值..但无法从中推断出任何东西..当我搜索“Apple”时,它会获取'a' 值也是如此。 mingramsize=1, 将索引 'a' 但为什么在搜索“Apple”时会获取它...
-
@Mats:我添加了分析快照供您参考..
标签: solr