如何在 solr 中将包含 solr 保留关键字的字段查询为“:”?
例如,
q = 'uri:http://www.example.com'
为包含保留字“:”的“ http://www.example.com ”引发错误
如何在 solr 中将包含 solr 保留关键字的字段查询为“:”?
例如,
q = 'uri:http://www.example.com'
为包含保留字“:”的“ http://www.example.com ”引发错误
我刚刚对此进行了测试,似乎只是像“:”一样转义“:”就可以了:
q = 'uri:http\://www.example.com'
对于我自己网站的索引,我倾向于简单地存储 URL 的路径,因为我自己知道域,所以这对我来说以前不是问题。但是,如果您将外部 URL 编入索引,那么您当然需要完整的 URL。
在索引期间转义/替换 Lucene 保留字符并将原始值存储在单独的字段中(stored="true" indexed="false"
在模式中)。如果您用空格替换保留字符,您将进入http www.example.com
索引字段并http://www.example.com
存储。根据索引字段的类型,您可以查询精确值(如果它是纯字符串)或标记(如果它有分析器)。