我有一个 solr 架构,我将邮政编码存储在文本字段类型中。
但 solr 只有在我搜索整个邮政编码时才会得到结果。如果邮政编码未完成,它不会得到任何结果。
例如:
我输入 12345 - solr 得到邮政编码 12345。
我输入 1234 - solr 没有得到任何结果。
你们中有人知道如何解决这个问题吗?
我必须在该字段或其他任何东西上使用任何标记器吗?
寻求帮助
我有一个 solr 架构,我将邮政编码存储在文本字段类型中。
但 solr 只有在我搜索整个邮政编码时才会得到结果。如果邮政编码未完成,它不会得到任何结果。
例如:
我输入 12345 - solr 得到邮政编码 12345。
我输入 1234 - solr 没有得到任何结果。
你们中有人知道如何解决这个问题吗?
我必须在该字段或其他任何东西上使用任何标记器吗?
寻求帮助
Check for EdgeNGramFilterFactory filter
<filter class="solr.EdgeNGramFilterFactory" minGramSize="2" maxGramSize="25" side="front"/>
EdgeNGramFilterFactory generates edge grams for the token e.g.
12345
would generate -> 12, 123, 1234, 12345 .....
You can use this at index time to generate the tokens.
So when you search for 1234
, documents with 12345
would match