Hallo Java-Forum!
Ich habe folgenden String den ich mit dem angegeben reguläre Ausdruck überprüfen und gleichzeitig einige Daten rausziehen möchte :
Das Problem ist, wenn er z. B. drei Spieler im String hat, die erste Gruppe nicht jeweils separat gefunden wird, sondern kokateniert as ein String.
Beispiel: aktuelleMitspieler(("Spielername1", vi), ("Spielername2", gr), ("Spielername3", ro)).
Die erse gefundene Gruppe ist ("Spielername1", vi), ("Spielername2", gr), und die zweite ("Spielername3", ro).
Warum wird die Gruppe nicht separat angegeben?
Viele Grüße
Perpetuum
Ich habe folgenden String den ich mit dem angegeben reguläre Ausdruck überprüfen und gleichzeitig einige Daten rausziehen möchte :
String: aktuelleMitspieler(("Spielername1", vi), ("Spielername2", gr), ...).
Java:
String player = "\\(\".*\",\\s*(?:vi|gr|ge|or|ro)\\)";
String regex = "aktuelleMitspieler\\((" + player + ",\\s*){0,4}(" + player + ")\\)\\.";
Pattern p = Pattern.compile(regex);
Matcher m = p.matcher(message);
m.find();
for(int j = 0; j <= m.groupCount(); j++) {
System.out.println(m.group(j));
}
Das Problem ist, wenn er z. B. drei Spieler im String hat, die erste Gruppe nicht jeweils separat gefunden wird, sondern kokateniert as ein String.
Beispiel: aktuelleMitspieler(("Spielername1", vi), ("Spielername2", gr), ("Spielername3", ro)).
Die erse gefundene Gruppe ist ("Spielername1", vi), ("Spielername2", gr), und die zweite ("Spielername3", ro).
Warum wird die Gruppe nicht separat angegeben?
Viele Grüße
Perpetuum