【问题标题】:Solr query starts withSolr 查询以
【发布时间】:2016-04-11 20:54:58
【问题描述】:

如何在 Solr 中编写执行“开始于”功能的查询?例如,如果我有 3 个具有以下标题字段的文档:

  1. 《星球大战第一集》
  2. 《星球大战2》
  3. 《星际迷航》
  4. “我的星球大战电影”

我希望查询返回前 2 个文档,其标题以“星球大战”开头

编辑:为了记录,这是我最终使用的:

fq=(name:"/Apple Ipad.*/")&wt=xml

【问题讨论】:

    标签: solr


    【解决方案1】:

    '^' 定义为搜索短语的第一个字符,意思是“开始于”。

    '$' 定义为搜索短语的最后一个字符,意思是“结尾为”。

    预解析您的搜索短语,适当地替换“^”和“$”。

    你可以使用正则表达式

    https://web.archive.org/web/20161030170947/http://www.openjems.com/solr-regex-tutorial/

    【讨论】:

    • 来自答案中引用的链接:“请注意,与 Perl 不同,Solr 中没有锚定语法(^ 和 $)。相反,所有 Solr 正则表达式都以 ^ 开头并在默认情况下以 $ 结尾。如果您不想锚定搜索,则需要在正则表达式的两侧指定 .*。"
    猜你喜欢
    • 2012-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多