Leerscheck mit Stringsplit
vector<string> SplitString (string aString,char *sep)
{
vector<string> vec;
char * cstr,*val,*p;
string str = aString;
cstr = new char [str.size()+1];
strcpy (cstr, str.c_str());
p=strtok (cstr,sep);
while(p!=NULL)
{
vec.push_back(p);
p=strtok(NULL,sep);
}delete[] cstr;return vec; }
Dies ist mein Code zum Teilen von Strings. Ich habe die folgende Zeichenfolge gesendet, um sie mit dem Trennzeichen '&' zu teilen.
"f0 = fname0 & l0 = lname0 & f1 = fname1 & l1 = lname1 & f2 = fname2 & l2 = lname2 & f3 = & l3 =".
Ich habe Ergebnis im Vektor wie unten.
f0 = fname0 l0 = lname0 f1 = fname1 l1 = lname1 f2 = fname2 l2 = lname2 f3 = l3 =
Jetzt habe ich nochmal die resultierenden Strings mit dem Trennzeichen '=' gesendet. Es funktioniert gut mit "l2 = lname2". Aber für "f3 =" und "l3 =" Mein Trennzeichen an der letzten Stelle der Zeichenfolge. Daher konnte ich nicht feststellen, ob der Wert null ist oder nicht. Ich möchte wissen, ob der Wert (linke Seite von '=' ist Name und rechte Seite ist Wert) leer ist oder nicht. Wie kann ich das überprüfen?