我有一个大约 lucene 索引。100 万份文件。从这些文件中,我想挖掘
- 电子邮件地址
- 签名 - ( [whitespace]/s/[whitespace]john doe[whitespace] )
- 每个文档的特定标识符(遵循正则表达式模式"\s[0-9]{3}[a-zA-Z0-9]{6}\s")。
我知道理想情况下在索引构建期间使用 solr 会容易得多,但是如何从构建的 lucene 索引中做到这一点?
我正在使用java。对于电子邮件地址搜索,我尝试使用.setAllowLeadingWildcard(true)然后搜索@以查找所有电子邮件地址 - 但实际上我得到的结果为零。如果我在 luke 中搜索@我得到零结果。如果我在 luke 中搜索@hotmail.com,我会得到一堆包含有效电子邮件地址的结果,例如 aaaaa@hotmail.com。
该索引是使用StandardAnalyzer创建的。不确定是否重要,但我相信文本是 UTF-8 格式的。
任何有用的建议,指针都很棒!请注意,这不适用于前端,因此查询不必接近实时。