0

我的问题是我想只用文本数据解析一个文档(而不是多个文档),并根据我的查询提取一些相关信息。

例如:如果我有以下文本:

This is a sample document.
Name: Te
Age: 25
Email: te@gmail.com
Some text in the end of the document

我想提取具有相应值的字段(姓名、年龄、电子邮件)

我发现的许多示例主要是搜索与查询匹配的文档。如果有人可以指导我在 lucene 库中查找哪些 Analyzer 或 Query 类或任何要阅读的材料,我将不胜感激。

4

1 回答 1

0

这应该让你开始。使用正则表达式,在 Java 中,文档内容已分配给变量text

String expr = "Name\:\s(\w+)\sAge\:\s+(\d+)\s+Email\:\s+([a-z0-9.@]+)\s+";
Pattern r = Pattern.compile(expr, Pattern.CASE_INSENSITIVE);
Matcher m = r.matcher(text);
if (m.find( ))
{
    System.out.println("Name: " + m.group(1) );
    System.out.println("Age: " + m.group(2) );
    System.out.println("Email: " + m.group(3) );
}
else { System.out.println("Match not found"); }
于 2013-11-12T14:19:02.120 回答