如何从Lucene索引数据中查找电子邮件ID

时间:2018-07-27 12:36:58

标签: lucene

当前,我正在使用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);

请指导。

1 个答案:

答案 0 :(得分:0)

org.apache.lucene.analysis.standard.UAX29URLEmailAnalyzer 如果我们使用lucene7.4.0,可以使用分析器