Hi
ich habe verschiedene Strings und will sofern er mit Anfang oder Anfang1 (weitere siehe tests Array) ist den vorangegangenen Text rausnehmen und sofern eine Zahl nach Anfang steht muss ich diese auch wissen.
Hier der Code:
aus "blah Anfang" soll blah werden (und die Info, dass dort ein Anfang stand - was ich aber mit matches schon herausfinde). Aus "blah Anfang1" soll blah werden und die Info, dass dort eine 1 stand).
Nun kann ich aber nicht replace nehmen. Weil z.B. ich das gleiche auch mit Ende, Ende1 etc machen muss und es texte ala:
"fehlende Blah Ende1" gibt.
--> Wobei mir gerade auffällt das Ende immer gross geschrieben ist und wenn es in einem anderen Wort vorkommt ist es immer klein geschrieben. Also würde das replace schon gehen, ich müsste vorher einfach zuerst prüfen ob und welche Zahl nach Ende steht.
Trotzdem hier die Frage, wie würdet ihr das machen?
ich habe verschiedene Strings und will sofern er mit Anfang oder Anfang1 (weitere siehe tests Array) ist den vorangegangenen Text rausnehmen und sofern eine Zahl nach Anfang steht muss ich diese auch wissen.
Hier der Code:
Java:
String[] tests ={"blah", "blah Anfang", "blah Anfang ", "blah Anfang1", "blah Anfang 1", "blah Angang 1b"};
String regex=".*Anfang[ 0-9]*$";
for(String test:tests) {
System.out.println(test+": "+test.matches(regex));
}
Nun kann ich aber nicht replace nehmen. Weil z.B. ich das gleiche auch mit Ende, Ende1 etc machen muss und es texte ala:
"fehlende Blah Ende1" gibt.
--> Wobei mir gerade auffällt das Ende immer gross geschrieben ist und wenn es in einem anderen Wort vorkommt ist es immer klein geschrieben. Also würde das replace schon gehen, ich müsste vorher einfach zuerst prüfen ob und welche Zahl nach Ende steht.
Trotzdem hier die Frage, wie würdet ihr das machen?