我想要一些实际的编程场景,在这里我们可以使用这个SolrUtils方法,即SolrUtils::real ()。
现在,我使用它从solr中的查询中转义查询字符。
q:+popularity:10 TO *+部分:0
我用的是
escapeQueryChars(+popularity:10 TO *+节:0)
但逃脱后我无法得到结果。
发布于 2013-02-08 04:27:24
通常用于转义查询中的字符,这些字符在Solr中具有特殊意义。
当前的字符列表是+ - && || ! ( ) { } [ ] ^ " ~ * ? : \,在Solr中具有特殊意义,如果不转义,则行为将有所不同。
例如,如果要搜索5*,除非转义,否则它将表现为通配符搜索,并返回从5开始的标记。
发布于 2014-02-26 23:40:49
它只用于查询值。
大多数情况下,您将接受用户的查询。因此,必须转义这些字符以避免异常。
用户搜索查询可以是:"Thomas‘Calculus (第12版)“上面的用户查询肯定会导致不必要的结果
$query = new SolrQuery('product_name:'.SolrUtils::escapeQueryChars($userQuery));https://stackoverflow.com/questions/14764744
复制相似问题