Beispiele für Regular Expressions
Hinweis
Optional können Sie beliebige Textstellen innerhalb eines Dokuments mit regulären Ausdrücken (Regular Expressions) automatisch von ecoDMS auslesen lassen.
Der gewünschte Inhalt muss hierzu nicht immer an der gleichen Position stehen. Er muss aber in dem von Ihnen farblich markierten Bereich vorkommen.
Durch die Verwendung von REGEX können Sie beispielsweise den Rechnungsbetrag in einem Dokument suchen und für die Klassifizierung übernehmen lassen.
Die folgenden Beispiele sind ein kleiner Auszug aus den vielen Möglichkeiten, die ein REGEX-Aufruf bietet.
# | Funktion | Regular Expression | Hinweis | Beispiel | Ergebnis |
---|---|---|---|---|---|
1 | Ausgabe eines Betrages vor einer Steuernummer. | REGEX:[\d,]+?(?= +Steuernummer) | Der Betrag vor "Steuernummer" soll ausgegeben werden | 109,54 Steuernummer | 109,54 |
2 | Ausgabe einer Umsatzsteuer-ID | REGEX:(?!(?i)(DE444638125))(?=(?i:de[\s\d]))(?i:de[0-9\s]*) | Umsatzsteuer ID (DE 9-stellig mit oder ohne Leerzeichen) soll ausgelesen werden, aber nicht die eigene (DE 444 638 125 zusätzlich wurden die erlaubten Zeichen in ecoDMS eingeschränkt (deDE1234567890) | DE 123 456 789 oder De 12 3 456 78 9 | DE 123 456 789 |
3 | Entfernung führender Nullen | REGEX:[1-9]\d* | führende Nullen aus Nummer entfernen (z.b. bei Barcode) | 00001234567890 | 1234567890 |
4 | Ausgabe eines Betrages | REGEX:(?<=Nettosumme:[\s])\b((\d{1,3}(\.|\,))*\d{2})\b | Zahl | Nettosumme: 212.340,89€ | 212.340,89 |
5 | Ausgabe eines Betrages | REGEX:(?<=Summe EUR) \d+([.,]\d+)*([.,]\d{2}) | Betrag nach einem bestimmten Betreff. Nach dem Komma 2 Zahlen. Punkte sind erlaubt. | Summe EUR 1.337,22 | 1.337,22 |
6 | Ausgabe eines Betrages | REGEX:(?<=Rechnungsbetrag:)[\s]*((((\d+)[,.]{1,10})+\d{0,2})|(\d+(?!,))) | Der Rechnungsbetrag soll ausgelesen werden. | Rechnungsbetrag: 130.81 | 130.81 |
7 | Ausgabe eines Betrages | REGEX:[\d\.]*[,\d]* erlaubte Zeichen: 0123456789, | Betrag mit 1000er Punkt soll ausgelesen, der Punkt aber NICHT übergeben werden | 1.000,99 | 1000,99 |
8 | Ausgabe eines Betrages | REGEX:(?<=Rechnungsbetrag[\s])([\d\w\.\,\-])* | Der Rechnungsbetrag soll ausgelesen werden. | Rechnungsbetrag 356,87€ | 356,87 |
9 | Ausgabe einer Kundennummer | REGEX:(?<=Kunden-Nr.:)[\s]*\d+ | Die Kundennummer soll ausgelesen werden. | Kunden-Nr.: 235689 | 235689 |
10 | Ausgabe eines Namen | REGEX:(?<=Sachbearbeiter\s:\s)\w*\s\w* | Der Name hinter dem : soll ausgegeben werden. | Sachbearbeiter : Enrico Palazzo | Enrico Palazzo |
11 | Ausgabe eines Namen | REGEX:(?<=geehrter\s|geehrte\s).*?(?=,) | Der Name hinter geehrter oder geehrte soll ausgegeben werden. | Sehr geehrter Alfred Tetzlaff, Sehr geehrte Angela Meier Fritz, Sehr geehrte Firma Gebrüder Apfel Holding GmbH, Sehr geehrte Familie Schmidt-Fernandez, Sehr geehrter Umberto Luigi D’Angelo, | Alfred Tetzlaff Angela Meier Fritz, Firma Gebrüder Apfel Holding GmbH, Familie Schmidt-Fernandez, Umberto Luigi D’Angelo |
12 | Textausgabe | REGEX:((?i)(?<=Firma:[\s]))([\S]*\s*\S*) | lies die nächsten beiden Wörter nach Firma | Firma: applord GmbH | applord Gmbh |
13 | Textausgabe | REGEX:(?<=Route:)([\d\w\. ])+ | Alles nach "Route" soll ausgegeben werden, in diesem Fall "Christian 01.05.2018" | Route: Christian 01.05.2018 | Christian 01.05.2018 |
14 | Textausgabe | REGEX:(?:Kunde123|Kunde321) | Entweder dieser Kunde oder der andere Kunde sollen ausgelesen werden. | Kunde123 | Kunde123 |
15 | Ausgabe eine Wertes | REGEX:(?<=Rechnungsdatum )[\s]*P\d{5} | Der Wert "P32180" soll ausgelesen werden. Ankerwort ist hier "Rechnungsdatum". | Kundennummer Rechnungsnummer Rechnungsdatum P32180 613976 13.05.2019 | P32180 |
16 | Ausgabe eine Wertes | REGEX:(?<=Rechnungsdatum P\d{5})([\s]*)\d{6} | Die Rechnungsnummer 343976 soll ausgelesen werden. Ankerwort ist "Rechnungsdatum". | Kundennummer Rechnungsnummer Rechnungsdatum P66180 343976 13.05.2019 | 343976 |
17 | Ausgabe eines xml-Tags | REGEX:((?<=<Ordnungsbegriff>)[\S]*(?=<\/Ordnungsbegriff>)) | Lesen xml Tag mit Tagnamen Ordnungsbegriff | /BelegId><Ordnungsbegriff>10000364309</Ordnungsbegriff><OrdnungsbegriffTyp | 10000364309 |