我是Solr主题的新手。 我需要知道如何在solr中搜索记录,但是使用字段标题,以两个单词开头,然后是wilcard。例如,当我搜索SQL命令时,我可以像“谁是%”一样。
我如何通过文本和通配符的第一部分进行搜索?
我测试了不同的东西,但没有任何效果。这种方式不起作用: http // www.domain.com:8080 / solr / select?q = title:“谁是*”
感谢。
答案 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