Сохранение писем при токенизации на основе. с люценом
Хотел бы токенизировать строки на основе.,; и т. д. Однако хотелось бы сохранить адреса электронной почты, IP-адреса и тому подобное. Как использовать анализатор с люценцией для выполнения этой задачи? Следующий код, который я нашел в stackru, не сохраняет электронные письма. Любые ссылки на документацию о том, как использовать функцию спецификации шаблонов StandardAnalyzer в lucene, также будут полезны. Большое спасибо
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() + "] ");
1 ответ
ClassicAnalyzer, который был StandardAnalyzer до версии 3.1, обрабатывает адреса электронной почты и IP-адреса так, как вы ищете.
В целом он менее точен по сегментации текста, чем StandardAnalyzer (особенно для неевропейских языков), но хорошо подходит для вашего тестового примера.