Ansics
Cadet 4th Year
- Registriert
- Mai 2003
- Beiträge
- 107
Hi,
Ich habe folgendes Problem: Ich möchte in Java einen String nach einem Muster scannen und in Gruppen aufteilen. Der String den ich scannen möchte ist allerdings variabel, so dass die Anzahl der Gruppen evtl varriert:
Pattern GAMESTATE = Pattern.compile("\\(GameState( \\([^ ]* [^)]*\\))*");
Ich habe also erste den String "(Gamestate" und dann jeweils solche Strings " (xxx xxx)". Von letzteren können unterschiedlich viele kommen, so daß ich jeden einzelnen von ihnen durch eine eigene Gruppennummer ansprecen möchte. Z.B. m.group(2);
Ok so wei der Plan. Mit obigen Pattern legt Java aber nicht beliebig viele Gruppen an, sondern der Stern(*) am Ende von (xxx xxx)* bewirkt, dass ich nur eine Gruppe bekomme. Wie kann das sein und was muss ich ändern?
Ich hoffe Ihr habt mich versanden
VG
Ansics
Ich habe folgendes Problem: Ich möchte in Java einen String nach einem Muster scannen und in Gruppen aufteilen. Der String den ich scannen möchte ist allerdings variabel, so dass die Anzahl der Gruppen evtl varriert:
Pattern GAMESTATE = Pattern.compile("\\(GameState( \\([^ ]* [^)]*\\))*");
Ich habe also erste den String "(Gamestate" und dann jeweils solche Strings " (xxx xxx)". Von letzteren können unterschiedlich viele kommen, so daß ich jeden einzelnen von ihnen durch eine eigene Gruppennummer ansprecen möchte. Z.B. m.group(2);
Ok so wei der Plan. Mit obigen Pattern legt Java aber nicht beliebig viele Gruppen an, sondern der Stern(*) am Ende von (xxx xxx)* bewirkt, dass ich nur eine Gruppe bekomme. Wie kann das sein und was muss ich ändern?
Ich hoffe Ihr habt mich versanden
VG
Ansics