我有一个solr架构,我将zipcodes存储在文本字段类型中。
但是,如果我搜索整个邮政编码,solr只会得到结果。 如果邮政编码没有完成,它不会得到任何结果。
例如:
我键入12345 - solr获取邮政编码12345。
我键入1234 - solr没有得到任何结果。
你们有人知道如何解决这个问题?
我必须在该字段或其他任何地方使用任何标记器吗?
THX寻求帮助
答案 0 :(得分:3)
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="25" side="front"/>
EdgeNGramFilterFactory为令牌生成边缘克数,例如
12345
会生成 - &gt; 12, 123, 1234, 12345 .....
您可以在索引时使用它来生成令牌。
因此,当您搜索1234
时,12345
的文档会匹配