Hallo,
Ich lese mit PDFBox eine PDF Datei mit folgendem Pattern aus
Pattern.compile("\s(([0-9]{5})[A-Z]?)\s");
In der PDF sthen mehrere Daten drin, aber auch Tabellen mit folgenden Beispielwerten
01100 1751 13 2.548,0 100,00 2.548,0 0,74 0,96 950 -22,92 1,9
01101 1751 7 2.191,0 100,00 2.191,0 0,40 0,32 376 25,00 1,0
01102 1751 8 808,0 100,00 808,0 0,46 2,94 343 -84,35 3,0
Er findet also z.B. 01100 doch dann hätte ich gerne die gesamte Zeile.
Wie komme ich von dem Pattern-Match auf die gesamte Zeile?
Danke und Gruss
Chris
Ich lese mit PDFBox eine PDF Datei mit folgendem Pattern aus
Pattern.compile("\s(([0-9]{5})[A-Z]?)\s");
In der PDF sthen mehrere Daten drin, aber auch Tabellen mit folgenden Beispielwerten
01100 1751 13 2.548,0 100,00 2.548,0 0,74 0,96 950 -22,92 1,9
01101 1751 7 2.191,0 100,00 2.191,0 0,40 0,32 376 25,00 1,0
01102 1751 8 808,0 100,00 808,0 0,46 2,94 343 -84,35 3,0
Er findet also z.B. 01100 doch dann hätte ich gerne die gesamte Zeile.
Wie komme ich von dem Pattern-Match auf die gesamte Zeile?
Java:
public class PDFPatternSearch {
public static void main(String[] args) {
PDDocument pd;
try {
// PDF file extracted
File input = new File("C:\\filename.pdf");
StringBuilder sb = new StringBuilder();
pd = PDDocument.load(input);
PDFTextStripper stripper = new PDFTextStripper();
sb.append(stripper.getText(pd));
Pattern p = Pattern.compile("\\s(([0-9]{5})[A-Z]?)\\s");
Matcher m = p.matcher(sb);
while (m.find()) {
System.out.print(m.group());
}
if (pd != null) {
pd.close();
}
} catch (Exception e) {
System.out.println("Error in PDFPatternSearch");
e.printStackTrace();
}
}
}
Danke und Gruss
Chris