stringmanipulation
-
Hallo!
Ich hab folgendes Problem:
Habe folgenden String:
@C000056C99D0250A10000055C09
und will mir jetzt nur die numerischen Werte auslesen, und die getrennt,
also, die buchstaben sind die trennungszeichen, die möchte ich weg und die zahlen extra haben.
0000056
99
0250
10000055
09ich wollte es mit SpanExcluding machen, aber dann hab ich die zahlen in einer wurscht....
danke im voraus,
merit
-
du könntest zeichen für zeichen auswerten, entscheiden ob es eine Ziffer ist und in einem string abspeichern. wenn es keine Ziffer ist nimmst schließt du den string ab und nimmst einen neuen
-
Hallo!
Danke für deine rasche Antwort.
Sorry, bin noch ein Neuling in c++, wie finde ich heraus, ob es eine zahl ist?
Gibt es sowas wie isnumeric?lg Merit
-
hi ...
und los gehts
void GetNumsFromString(CString strMyString,CStringArray& aResult) { CString strTemp; for(int i=0;i<strMyString.GetLength();i++) { if((int)strMyString[i] < 48 || (int)strMyString[i] > 57) { if(!strTemp.IsEmpty()) aResult.Add(strTemp); strTemp = ""; } else strTemp += strMyString[i]; } if(!strTemp.IsEmpty()) aResult.Add(strTemp); }
... und nun das ganze ausgeben (z.B.):
CStringArray aResult; GetNumsFromString("@C000056C99D0250A10000055C09",aResult); for(int i = 0;i<aResult.GetSize();i++) { MessageBox(aResult.GetAt(i)); }
herzlichen glückwunsch
-
Hallo!
Ich bin dir unheimlich dankbar, dass du dir soviel mühe gemacht hast, denn das ist genau das, was ich brauche, vielen vielen Dank!
Ich hab's schon ausprobiert, funzt super.lg Merit