Hallo MB,
ich gebe mir Mühe, Dir zu folgen, bin aber nicht ganz sicher, ob das gelingt.
Deine Eingabe besteht also aus Informationsbrocken, von denen jeder zu einem Hashmap-Eintrag werden soll.
Ein Informationsbrocken kann eingerückt sein, die Einrückung soll erfasst werden.
Der eigentliche Inhalt besteht aus einer Zahl, * einem Doppelpunkt, * einem Schlüsselwort in Großbuchstaben, Tabs, * Tabs, ein Minuszeichen, mutmaßlich gefolgt von einer Leerstelle, und dann beliebigem Text.
Überall wo ich ein Sternchen gemacht habe kann auch ein Zeilenumbruch sein, der überlesen werden soll.
Die Zahl kann fehlen.
Was kann noch fehlen? In deiner Beschreibung ist jede Teilkomponente in eckige Klammern gesetzt, diese stehen in Syntax-Notationen zumeist für „optional“
Kann der "beliebige Text" ebenfalls von einem Zeilenumbruch unterbrochen werden?
Wenn nicht, ist das Ende eines Informationsbrockens klar definiert. Wenn ja: Woran erkennst Du den Beginn des nächsten Informationsbrockens? An der Zahl? Darf der Text demzufolge keine Zahlen enthalten? Oder am Doppelpunkt? Darf der Text demzufolge keinen Doppelpunkt enthalten?
Rolf
sumpsi - posui - obstruxi