Methoden Java String aufteilen

Fighta02

Mitglied
Hallo,

ich habe ein kleines problem und komme leider nicht weiter. Ich bin leider kein experte in Java.

Folgendes Problem. Ich bekomme von einem anderen System eine Zeile:

Code:
 zeile17=>  +28  KT         HierstehtText                3Ts 4Tj 2Ar  <

Ich müsste jetzt folgende Paramter einzelnen herausfischen

(1) +28
(2) KT
(3) Hier Steht Text(Hat mehrere Leerzeilen dazwischen)
(4) 3Ts 4Tj 2Ar ( als ein Feld)

WIe kann ich den das am besten machen? Mit split habe ich es nicht hinbekommen....
 
Zuletzt bearbeitet:
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.
 
Danke für deine Hilfe

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)
 
Sorry, das ich mich noch mal einmische,

Wie sieht denn die allgemeine Beschreibung aus ?

ungefähr so:

[() 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.
 
Nur so eine Frage am Rande: hast du Einfluss darauf wie das vom Grossrechner kommt ? Definierte Feldtrenner einfügen kannst du da nicht oder ?
 
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?
 
Sorry, das ich mich noch mal einmische,
ungefähr so:
Sieht gut aus fürs erste, danke. Jetzt muss ich das noch in java einbauen ^^

Nur so eine Frage am Rande: hast du Einfluss darauf wie das vom Grossrechner kommt ? Definierte Feldtrenner einfügen kannst du da nicht oder ?
Nee ich arbeite für eine behörde. Die Datenbank gibt es schon seit den 80igern ^^

Haben die Zeilen eine fixe Länge oder ist die Länge durch den Text variabel?
Nee haben keine feste länge. DIe anderen felder haben ähliche strukturen wie zeile 16 und zeile 17. Mal kommt das eine vor, mal das andere
 
Ich sehe dann z.B. bei der zeile16 das Problem wie du erkennst ob die 4 dahinten ein Teil des Textes ist oder schon ein neues Feld ?
 
Es gibt leider doch noch eine 3. Variante:

Code:
 zeile11=>  +1 TEXT   einANDERERTEXT     4Hj  <
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.
 

Neue Themen


Zurück
Oben