2016-06-21 123 views
0

我是Solr的新手,在优化solr搜索时遇到问题。 当我搜索“C4902AN#140”时,首先显示结果为“140”,而结果为“”C4902AN#140“出现在包含”140“的结果后面。但我想要”C4902AN#140“结果为“140”之前,提前Solr搜索“哈希符号”

感谢!

+0

你的分析是什么? –

回答

0

您可能需要检查与标记生成器您在架构文件用于字段类型定义。

如果字段类型有solr.standardTokenizer它会删除#字符。

你应该考虑提高它具有文件“C4902AN#140”

您可以使用elevate.xml文件中的config文件夹,只是提到该文件首先出现在结果集的特定字符串搜索关键词。

+0

似乎“#”在elevate.xml文件中不起作用。只有简单的文本可以像“foo bar”一样工作。对于tokenizer的任何想法?感谢您的帮助 –

+0

在架构文件中,将solr.StandardTokenizerFactory更改为solr.WhitespaceTokenizerFactory以获取该字段类型定义(存储值“C4902AN#140”的字段) – vinod

0

您正在使用这应该是使用KeyWordTokenizerFactory,使您的整个单词没有得到标记化的分析,但只有一个道理,即产生自身的单词。