CString lücke finden
-
Ich habe eine String wie "6542 Martin Müller". ich habe eine funktion geschrieben und zwar prüfe die zahlen und characters . Wenn ich die nummer und der Name trenne dann hab ich so ein Problem "6542" und "MartinMüller". Also martin und Müller wurden zusammen geschrieben,d.h. mein such funktion ignoriert die Lücke.
Mein funktion ist wie unten
CString strId,strName; for (int i=0; i<Text.GetLength(); ++i) { //-------------------------------------------------------------+ // UserId aus dem String lesen ! //-------------------------------------------------------------+ if(Text[i]>=_T('0') && CText[i]<=_T('9')) { strId += Text[i]; } //-------------------------------------------------------------+ // UserId von String in integer umwandeln ! //-------------------------------------------------------------+ k=atoi(strId); rsAdministration.m_UserId =k ; //-------------------------------------------------------------+ // UserName von gesamte String rausziehen ! //-------------------------------------------------------------+ if((Text[i]>=_T('a')&&Text[i]<=_T('z')) ||(Text[i]>=_T('A')&&Text[i]<=_T('Z'))) { strName += Text[i]; } rsAdministration.m_UserName =strName ; }
PC: "6542 Martin Müller" istin "CString Text" gespeichert..
Vielen Dank für die Hilfe
-
und mir fehlen auch die umlaut buchstaben z.B. wenn ich "4561 Jörg Zürö" trennen und speichern möchte, dann habe ich so was wie "4561" und "JrgZr"
-
Wenn dein String wirklich nur aus Zahl + Name besteht dann lösch doch einfach nur die Zahlen.
-
wie meinst du ? ich brauch aber die zahlen auch . ich muss die trennen
-
habs gemacht , dankeschön
-
Die Zahlen liest du doch schon korrekt aus. Merk Dir das letzte i mit einer Zahl. Der Name steht dann in den Zeichen iMax + 1 bis Ende. CString::Mid kann dir dann diesen Teil extrahieren.