当前,我正在使用lucence 7.4,我的要求是提取特定根文件夹下包含电子邮件ID的文件列表
作为一个新手,我做了一次模拟练习,以获取有关Lucene的经验,到目前为止,我能够递归地为所有文件索引根文件夹,并且示例字符串(例如:oracle.com)的搜索模式正在返回列表中给我的文件。
前进,我无法理解如何仅提取出现电子邮件ID的文件?
我的索引器和搜索器Java类都使用StandardAnalyzer。
在我的主课中,我尝试使用下面的正则表达式,但是没有运气..:(
tester.search("[a-z]*.[a-z]*?oracle.com")
.
.
private void search(String searchQuery1) throws IOException, ParseException, org.apache.lucene.queryparser.classic.ParseException {
searcher = new Searcher(indexDir);
long startTime = System.currentTimeMillis();
//create a term to search file name
Term term1 = new Term(LuceneConstants.CONTENTS, searchQuery1);
//create the term query object
Query query1 = new RegexpQuery(term1);
TopDocs hits = searcher.search(query1);
请指导。
答案 0 :(得分:0)
org.apache.lucene.analysis.standard.UAX29URLEmailAnalyzer 如果我们使用lucene7.4.0,可以使用分析器