String teilen
-
Hallo Leute,
ich bin ziemlicher c++ neuling und frage mich grad, wie ich
einen string nach einem bestimmten zeichen teilen kann.
Bsp: string test = 'Test-me';
split(test,'-') ergibt{'Test','me'};Also ich möchte eine Funktion , die nach einem Zeichen den string splittet und mit dann ein Array von strings oda so zurückgibt. Gibt es sowas?oder muss ich es per hand machen ?
Wäre für jede hilfe dankbar
lg
-
Hallo luna19891,
Willkommen im C++-Forum!
zu Deiner Frage; siehe http://www.cplusplus.com/reference/cstring/strtok/
Gegenfrage: wo kommt der String her? Was steht dort konkret drin?Gruß
Werner
-
Naja, strtok ist C und arbeitet mit char*, außerdem nicht thread-safe.
Unter C++ benutzt man lieber std::string::find. Ansonsten gibt es noch den Boost tokenizer.
Wenn du magst, kannst du auch getline benutzen:
stringstream ss("bla bla"); string s; while (getline(ss, s, ' ')) { cout << s << endl; }
Damit lässt sich auch schnell so ein Array basteln.