4

如何在 solr 中将包含 solr 保留关键字的字段查询为“:”?

例如,

q = 'uri:http://www.example.com'

为包含保留字“:”的“ http://www.example.com ”引发错误

4

2 回答 2

5

我刚刚对此进行了测试,似乎只是像“:”一样转义“:”就可以了:

q = 'uri:http\://www.example.com'

对于我自己网站的索引,我倾向于简单地存储 URL 的路径,因为我自己知道域,所以这对我来说以前不是问题。但是,如果您将外部 URL 编入索引,那么您当然需要完整的 URL。

于 2009-02-21T14:10:54.807 回答
1

在索引期间转义/替换 Lucene 保留字符并将原始值存储在单独的字段中(stored="true" indexed="false"在模式中)。如果您用空格替换保留字符,您将进入http www.example.com索引字段并http://www.example.com存储。根据索引字段的类型,您可以查询精确值(如果它是纯字符串)或标记(如果它有分析器)。

于 2009-02-21T10:07:15.440 回答