我正在使用solr来获取数据。 我使用以下参数来获取数据:
http://testURL/solr/core0/select?start=10&rows=10&hl.fl=CC&hl.requireFieldMatch=true&hl=on&hl.maxAnalyzedChars=1&hl.fragsize=145&hl.snippets=99&sort=COlumn1+desc&q=CC%3a%28%22test%22~2%29&fl=title120%2ccolumn2%2ccolumn3%2cRL_DateTime%2cSid%2ccolumn4%2cguid%2chour&hl.regex.pattern=^\d+%20%3E%3E%20
以上查询不适用于hl.regex.pattern参数。
如果我删除“hl.regex.pattern”而不是在突出显示部分中提供结果。 如果我提供正则表达式而不是它。
正则表达式正在使用我的c#代码。
我在这里错过了什么吗?
答案 0 :(得分:1)
几乎可以肯定是^\
。那些在URI中无效,所以你必须逃避它们。
来自RFC 1738:
只有字母数字,特殊字符“$ -_。+!*'(),”和 可以使用用于其保留目的的保留字符 在URL中未编码。
这是有点陈旧的,因为现在允许像λάμδα这样的非罗马字母数字,但要点是相同的。
请尝试hl.regex.pattern=%5E%5Cd+%20%3E%3E%20
。