hallo,
ich glaube ich habe mal wieder zu kompliziert gedacht
also zu meinen problem: ich habe einen string der folgender maßen aussieht: "ab111hallo111bello111bla"
also er enthält nur buchstaben und zahlen, nun möchte ich alle vorherigen zahlen mit den nächsten addieren, also sollte am ende das herauskommen: "bc111ibmmp222cfmmp333cmb"
hier meine lösung, welche auch funktioniert, habt ihr lösungsansätze die weniger kompliziert sind?
ich glaube ich habe mal wieder zu kompliziert gedacht
also zu meinen problem: ich habe einen string der folgender maßen aussieht: "ab111hallo111bello111bla"
also er enthält nur buchstaben und zahlen, nun möchte ich alle vorherigen zahlen mit den nächsten addieren, also sollte am ende das herauskommen: "bc111ibmmp222cfmmp333cmb"
hier meine lösung, welche auch funktioniert, habt ihr lösungsansätze die weniger kompliziert sind?
Java:
private String numb = "";
public void transNumb(String asc){
String help = "";
String bla = "";
int zahl = 0;
int erg = 0;
for(int i=0; i<asc.length(); i++){
if(Character.isDigit(asc.charAt(i))){
help += asc.charAt(i);
zahl = Integer.parseInt(help);
if(i+1 == asc.length()){
zahl = Integer.parseInt(help);
erg += zahl;
numb += Integer.toString(erg);
}else{
if(!Character.isDigit(asc.charAt(i+1))){
System.out.println("keine zahl");
erg += zahl;
numb += Integer.toString(erg);
}
}
}else{
if(help.equals(bla)){
zahl = 0;
}else{
zahl = Integer.parseInt(help);
help = "";
}
numb += asc.charAt(i);
}
}
}