strtok: bestimmte Syntax aufteilen
-
hallo... ich habe einen string der z.B: so aussieht:
hallo "Melanie Sprint" das alter "17 Jahre" huhudas soll aufgeteilt werden in:
hallo Melanie Sprint das alter 17 Jahre huhumein ansatz:
pToken = strtok(buf_em, "\""); if(pToken) { printf("Test: %s\n",pToken); while ( (pToken = strtok(NULL, "\"")) ) { printf("Test: %s\n",pToken); } }aber ich blick da nicht richtig durch^^ habt ihr eine idee??
achja -
1. die Syntax hab ich mir net ausgesucht
2. der satz der geteilt werden soll ist nur müll - nur als Beispieldanke!
-
duoBabel schrieb:
hallo... ich habe einen string der z.B: so aussieht:
hallo "Melanie Sprint" das alter "17 Jahre" huhudas soll aufgeteilt werden in:
hallo Melanie Sprint das alter 17 Jahre huhuhi,
du kannst nicht leerzeichen als trenner nehmen und gleichzeitig zwei wörter zusammen lassen (wie bei 'melanie sprintf'). das muss schon unterschiedlich sein...
-
Du könntest alle ' ' innerhalb zweier " durch ein anderes Zeichen ersetzen (das natürlich sonst nicht auftreten darf), dann strtok()en und dann das Zeichen in den Teistrings wieder durch ' ' ersetzen.
Wäre zwar keine wirklich schöne Lösung, aber das ist es mit strtok() eh nicht ;P