Solr查询 - 如何删除所有特殊字符的逻辑解释?

时间:2017-03-15 15:57:25

标签: solr special-characters

这与从输入String中删除所有特殊字符略有不同。我只是想让它们成为现实。例如:

查询:Haha和LaLa将被标记为

1. Haha
2. And
3. LaLa

1. Haha
2. LaLa

并使用相同的逻辑,输入一个特殊字符,例如:

`! , . : ; OR NOT < >` 

将是......自己(不是逻辑构造函数,如果在数据库中存在这样的名称,查询将返回结果)

1 个答案:

答案 0 :(得分:1)

您可以使用字段或原始查询解析器搜索您键入的查询字符串,而无需进行任何分析或转换。

q = {!field f='title'} Haha AND LaLa

[<强>调试 - 响应

<lst name="debug">
<str name="rawquerystring">{!field f='title'}Haha AND LaLa</str>
<str name="querystring">{!field f='title'}Haha AND LaLa</str>
<str name="parsedquery">title:Haha AND LaLa</str>
<str name="parsedquery_toString">title:Haha AND LaLa</str>
<str name="QParser"/>
</lst>

正如您从响应中看到的Solr寻找包含&#34; Haha和LaLa&#34;的文档。 字段查询解析器处理&#34; AND&#34;搜索关键字不是逻辑运算符。