Java PDFBox,从表的特定行提取数据



我有一个小问题,你一定能在30秒内解决!: -)

我试着读pdf时间表中的某一行。

例子:

New York:   06:30  /  07:00  /  10:15  /  12:30
Boston:     07:30  /  08:00  /  11:15  /  01:30
Chicago:    08:30  /  09:00  /  12:15  /  02:30

我参考了那个主题,并试图适应它,但它不起作用!

如果我没理解错的话

String lines[] = text.split("\r?\n"); // give you all the lines separated by new line

在我的例子中,String lines[] = text.split("Boston");应该检索所有的Boston列,但事实并非如此。

那么我如何检索所有波士顿时间(07:30、08:00、11:15、01:30,等等)呢?

如有任何帮助,不胜感激。

编辑:

我说的显然是原生pdfbox函数

否则,我可以逐行分析从PDF文件中提取的文本,当然,但我猜它不会是安静的优化/快速。

如果我没理解错的话

String lines[] = text.split("\r?\n"); // give you all the lines separated by new line

在我的例子中,String lines[] = text.split("Boston");应该检索所有的Boston列,但事实并非如此。

不,您的操作在每次出现字符串&;boston &;时拆分text。因此,在您的示例中,它会产生两个string

New York:   06:30  /  07:00  /  10:15  /  12:30

:     07:30  /  08:00  /  11:15  /  01:30
Chicago:    08:30  /  09:00  /  12:15  /  02:30

那么我如何检索所有波士顿时间(07:30、08:00、11:15、01:30,等等)呢?

String text中搜索子字符串"Boston:",获取以下子字符串直到下一个行结束符,并将其拆分为斜杠字符。

我说的显然是原生pdfbox函数

。你一开始讨论的是split,这是Java String类的一个方法,你现在的任务是在Java中进行纯字符串分析。

如果你谈论的是Pdfbox函数,你应该关注自定义PdfTextStripper

由于在提取文本之前您不知道Boston行在哪里,因此在提取文本之前您几乎无法做任何事情。

相关内容

  • 没有找到相关文章

最新更新