【问题标题】:Solr is turning white space into plusSolr 正在将空白变成加号
【发布时间】:2013-07-19 18:47:30
【问题描述】:

我想进行这样的查询:

q=field:(fu* bar*)

为此,我将其发送给 Solr

q=field:(fu*%20bar*)

当我查看 solr.log 时,我看到 Solr 执行了以下操作:

q=field:(fu*+bar*)

这绝对不会导致预期的结果。这是正常的吗?对于“空间到加交换”我该怎么办?

感谢您的帮助!

【问题讨论】:

  • 您的 schema.xml 中是否指定了 default operator
  • 你期望看到什么结果,你得到了什么结果?

标签: solr


【解决方案1】:

试试这个:

q=field:(fu*+bar*)

url编码中,空格为+

【讨论】:

  • 您提示空格是“+”是正确的。这意味着,这是一种正常行为。 (顺便说一句:+ 是 %2b。)你的例子是错误的。 “fu*+bar*”中的“+”不是“fu*”和“bar*”两个表达式的组合,而是“fu*+bar*”一个表达式中的普通字符。
  • "+" 字符可以用作“空格”,如果您不对其进行百分比编码。如果您愿意,那么它将成为您查询词的一部分。
  • 我不明白你的意思,黑诺布。如果要搜索两个词,请使用“q=field:fu*+field:bar*”。
  • 我混淆了“+”是“”,而“%2B”是“+”。现在一切都很好,您的回答将我引向正确的道路-->绿色钩子!
猜你喜欢
  • 1970-01-01
  • 2012-01-04
  • 2017-04-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-26
  • 2020-10-28
  • 1970-01-01
相关资源
最近更新 更多