Nun... ich würde dir trotzdem emphelen deine Parsingstrategie zu ändern. Denn deine Methode mit den Regexen dürfte verdammt langsam sein und du kommst schnell an die Grenzen der Möglichkeiten...
Ich habe mal einen ini-Dateiparser in Java geschrieben. Den kann ich dir gerne geben, wenn du ein paar Anregungen brauchst.
Dein Parser müsste allerdinsg rekursiv aufgebaut sein, da es unbegrentzt viele Unterobejket gibt (ist doch so, oder?). Mein ini-File Parser kommt ohne Rekursion aus
.
Wenn du trotzdem unbedingt bei deiner Parsemethode bleiben willst:
Ich denke mal du erwartest, dass diese Bedingung anspringt:
token.matches("^(.+=new T)"))
Mach's mal so:
token.matches("^(.+=new T).*")
das sollte funktionieren. Jetzt frag' mich aber nicht, warum matches nicht anspringt, wenn das Ende des Strings nicht mitmatcht. Das sollte meines Erachtens nur dann passieren, wenn ein $ am Ende ist..
Also wenn jemand eine Antwort drauf hat.
Und dies ist für sowas manchmal ganz praktisch:
http://www.fileformat.info/tool/regex.htm
Letzter Tipp: Drogen. Machen zwar nicht glücklich, geben einem aber wenigstens das Gefühl glücklich zu sein.
Have a lot of fun!