我的网站上有一个搜索自动完成功能,我使用Solr来查找匹配的文档。我试图在页面标题上获得部分匹配,所以例如Java *会匹配Java,Javascript等等。到目前为止,自动完成的设置是为了让我在页面中的所有文本部分匹配,一些奇怪的结果,所以我决定切换到使用页面标题。但是,当我尝试将页面文本的text
的搜索词切换为title
时,该查询突然不再拾取部分匹配。这里是我的原始查询的例子:Solr查询返回的是一个字段的部分匹配,而不是另一个字段
q=text:java^2+text:"java"
&hl=true&hl.snippets=1&hl.fragsize=25&hl.fl=title&start=0&rows=3
不幸的是,谁对我处理这件事了,那家伙不会和我一起工作了,所以我根本不知道发生了什么事情“引擎盖下”。如果这有什么区别,我使用Spring/J2EE作为后端。
奇怪的是,我们以前使用不使用通配符的所有查询,它仍然拿起部分匹配。为什么会这样? – therin
这取决于一点。如果您配置了标记器,则可以根据特定条件标记字词。有例如因此,如果您搜索与Java2Me Java的文本其将在''java''2' me'像'Java2Me'一个PatternTokenizer也将被退回。 – fyr