想基于标记化字符串。 ,;然而,想要保留电子邮件地址,IP地址等。我如何使用具有lucence的分析仪来完成此任务? 我在stackoverflow上找到的以下代码不保留电子邮件。有关如何使用lucene的StandardAnalyzer的模式规范功能的文档的任何指针也将有所帮助。非常感谢
String text
= "Lucene is simple yet powerful java based search library. sitaraman@dataguise.com";
Analyzer analyzer = new StandardAnalyzer(Version.LUCENE_CURRENT);
TokenStream tokenStream = analyzer.tokenStream(
LuceneConstants.CONTENTS, new StringReader(text));
TermAttribute term = tokenStream.addAttribute(TermAttribute.class);
while(tokenStream.incrementToken()) {
System.out.print("[" + term.term() + "] ");
答案 0 :(得分:0)
ClassicAnalyzer,它是3.1版之前的StandardAnalyzer,以您正在寻找的方式处理电子邮件地址和IP地址。
与StandardAnalyzer相比,它在文本分割方面不够精确(特别是对于非欧洲语言),但适用于您的测试用例。