用solo找不到的两个特殊标志(例如:!!)

时间:2015-11-16 15:50:21

标签: search solr filter whitespace

用solo找不到的两个特殊标志(例如:!!) 我有这个索引:

http://localhost:8983/solr/koolcha/get?id=547deb3649dbae548b0f0100

{
  "doc": {
    "status": "xxxxxx",
    "updated": "2014-12-05T09:47:27Z",
    "ns": "foo3.bags",
    "created": "2014-12-02T16:39:18Z",
    "_ts": 6.2177735253447e+18,
    "label": "_DSC0571.tif",
    "project": "xxxxx",
    "assignee": "xxxxx",
    "folderid": "! !",
    "_version_": 1.5180111153642e+18,
    "_id": "547deb3649dbae548b0f0100",
    "bagid": "xxxxx"
  }
}

当我尝试通过< folderid'来搜索它时 http://localhost:8983/solr/koolcha/select?q=folderid:\!%20\! solr找不到任何东西

<response>
    <lst name="responseHeader">
        <int name="status">0</int>
        <int name="QTime">0</int>
        <lst name="params">
            <str name="q">folderid:\! \!</str>
        </lst>
    </lst>
    <result name="response" numFound="0" start="0"/>
</response>

如果我提出一些其他的价值,即使有特殊的迹象,例如。&#39; !!&#39;将工作。 只有空白的特殊标志的组合才能返回。 这是Solr的一个错误吗?或者我做错了什么?

1 个答案:

答案 0 :(得分:0)

除了转义,我认为你必须引用过滤查询:

 http://localhost:8983/solr/koolcha/select?q=folderid:"\! \!"  

使用Lucene Query解析器(你可能已经做过)。