solr查询目标混合大小写字符串

时间:2017-08-10 10:21:51

标签: solr lucene datastax-enterprise

我存储了一些格式不正确的电子邮件地址,他们的域名中包含大小写混合,我需要能够抓取这些资源以便我能够纠正它们。这是修复损坏数据的特殊情况,我需要使用混合案例域撤回所有资源。

我没有关于如何处理此查询的第一个线索,也不知道它是否可能。

1 个答案:

答案 0 :(得分:1)

您可以使用正则表达式执行查询,该表达式尝试将小写字符与大写字符匹配。它将确切地依赖于地址的存储方式(它将对每个令牌起作用,因此如果链中有一个LowercaseFilterFactory,我猜它不会找到任何地址命中):

# retrieve all those that have a lowercase letter followed by a uppercase letter
q=email:/.*[a-z][A-Z].*/

# retrieve all those that have a uppercase letter followed by a lowercase letter
q=email:/.*[A-Z][a-z].*/

这两个查询之间会有重叠,因此请按顺序处理它们,以避免两次执行相同的工作。