Solr - 按文字的第一部分搜索

时间:2013-08-16 03:05:37

标签: sql solr wildcard

我是Solr主题的新手。 我需要知道如何在solr中搜索记录,但是使用字段标题,以两个单词开头,然后是wilcard。例如,当我搜索SQL命令时,我可以像“谁是%”一样。

我如何通过文本和通配符的第一部分进行搜索?

我测试了不同的东西,但没有任何效果。这种方式不起作用: http // www.domain.com:8080 / solr / select?q = title:“谁是*”

感谢。

2 个答案:

答案 0 :(得分:0)

短语不可能使用通配符。您可以使用prefix query parser作为string类型的字段:

http//www.domain.com:8080/solr/select?q={!prefix f=title}Who is

请注意,此解决方案区分大小写,因此,如果您要搜索“who is”,则在向Solr添加文档并在程序中执行查询的低位时,应该对字段进行小写同样。

答案 1 :(得分:0)

你可以做的是让Solr相信你的短语只是一个词。

如果您使用此solr.PatternReplaceFilterFactory" pattern="(\s+)之类的过滤器对其进行索引,然后确保在将发送到solr之前将相同的正则表达式应用于查询,则可以实现此功能。

详细了解此链接:http://pietervogelaar.nl/solr-3-5-wildcard-search-as-sql-like/

请同时记住这个已知问题:http://bensch.be/the-solr-wildcard-problem-and-multiterm-solution