droptix hat geschrieben:Ich komme leider nicht mehr weiter hier, bin aber schon ganz nah dran. Es geht darum, das letzte störende Leerzeichen rauszukriegen:
Was du in der ersten Gruppe brauchst ist nicht irgendetwas beliebiges, sondern alles, was kein Leerzeichen ist. Daraus ergibt sich \S* und das einführende \s* kannst du dir dann schenken. Weiter hinten im Ausdruck hast du noch ein überflüssiges \s*. Das wird bereits durch das .* in der vorhergehenden Gruppe mit abgefrühstückt.
Wenn du die Gruppen 2 und 3 nicht getrennt brauchst, dann kannst du sie auch zusammenfassen.
Gegebenenfalls sollte man, je nach erwartetem Ergebnis, einige der *-Quantifizierer noch durch ein + ersetzen.
Eine Ergänzung noch: "string" ist ein äußerst schlecht gewählter Name für einen Bezeichner, da du damit das eingebaute "string" überschreibst.