Wie sieht denn die allgemeine Beschreibung aus ?
"Beliebiger Text gefolgt von => gefolgt von whitespace gefolgt von + oder - gefolgt von 2 Ziffern gefolgt von whitespace gefolgt von KT gefolgt von beliebigem Text mit whitespace gefolgt von 3Ts 4Tj 2Ar"
So in dem Stil. Und @kneitzel hatte da mal einen Link wo du deinen regulären Ausdruck online testen kannst.
ALso den + könnte man ignorieren weil ich bei der if abfrage immer mit Startswith("+") anfange.
Dannach kommen ziffern(aber manchmal auch nicht)
hier habe ich ein String z.b(Leider diesmal ohne +)
Code:
zeile16=> BT Wirken in XXX und YYY 4 <
Die ganzen Sachen kommen von einem alten großrechhner datenbank. Ich brauch ne struktur um die felder dann auf einer neuen Seite anzeigen zu können(das dann über .jsp)
[() beliebige whitespaces]
(1) +28 oder was noch?
() beliebige whitespaces
(2) KT oder was noch?
() beliebige whitespaces
(3) Hier Steht Text(Hat mehrere Leerzeilen dazwischen)
() beliebige whitespaces
(4) 3Ts 4Tj 2Ar ( als ein Feld) oder was noch?
[() beliebige whitespaces]
Edit: Und ein (komplettes) Beispiel sagt manchmal mehr als 4 Zeilen.
Haben die Zeilen eine fixe Länge oder ist die Länge durch den Text variabel?
Es ist halt schwer nur anhand dieser beiden Zeilen etwas zu sagen.
Code:
zeile16=> BT Wirken in XXX und YYY 4 <
zeile17=> +28 KT HierstehtText 3Ts 4Tj 2Ar <
Wir haben eben keine Angaben darüber welche Leerzeichen abstände zwischen den einzelnen Blöcken möglich ist.
Welche Varianten kann es bei dem letzten Feld geben? Immer eine Zahlen-Buchstabenkombination?
Beim 1.Feld kann es eine Zahl mit "+" sein auch eine ohne?
also diesmal ohne 2stellige abkürzung vorne(BT/KT) das wären die 3.varianten soweit ich das sehe.
hier könnte ich denke ich über eine if abfrage schauen ob die stelle 2stellig ist oder nicht...aber muss es ja trotzdem über reguläre ausdrücke machen.
Ja schon aber wenn der Text davor z.B. heisst "BT Morgen kommen 4 neue Ladungen Kaffe 4 <"
woher weisst du dass die erste 4 nicht schon diejenige welche ist ?
Edit: ok, man könnte in einem regulären Ausdruck sagen .... 1 Ziffer gefolgt von whitespaces am Ende"
Ja schon aber wenn der Text davor z.B. heisst "BT Morgen kommen 4 neue Ladungen Kaffe 4 <"
woher weisst du dass die erste 4 nicht schon diejenige welche ist ?
zwischen dem paramter 4 und dem text gibt es halt mehr als nur eine leerzeile. Anders geht das denke ich nicht. Da hast du recht. Es ist schon sehr kompliziert