Suche Funktion zur automatischen Trennung von Stringvariablen
-
Hallo Leute,
ich habe eine Textzeile, die aus drei Teilen besteht.
Die drei Teile sind durch zwei Tabulatoren getrennt.Gab es es nicht eine String-Funktion, welche diese Textzeile automatisch in
drei Stringvariablen trennen kann?Danke im Voraus.
-
Ist wirklich nicht schwer.
Ohne "Pistole":String tmp = Textzeile+"\t"; int tp = tmp.Pos("\t"); while (tp > 0) { String teil = tmp.SubString(1,tp); tmp = tmp.SubString(tp+1,tmp.Length()); tp = tmp.Pos("\t"); }
-
oder mit Standardmitteln
String textZeile; // irgendwie gefüllt std::stringstream str(textZeile.c_str()); String s1, s2, s3; str >> s1 >> s2 >> s3;
-
Vielen Dank für die Lösungen. Hab wieder was dazu gelernt.
Die manuelle Trennung habe ich schon selbst programmiert.Aber ich meine doch, dass es eine Standard Funktion gibt, in der man als Eingabeparameter die Zeiger auf Stringvariablen eingibt. Ich kann mich jetzt nur nicht an den Funktionsnamen erinnern.
-
Man kann noch IsDelimiter ins Rennen schicken
-
Hallo,
du verwechselst das jetzt nicht mit PHP-Funktionen (explode) oder Javascript (split)?
Innerhalb einer StringList könnte man noch mit "DelimitedText" arbeiten...
LG, Micha
-
Hallo
C : strtok
C++ : std::stringstream (Schon gezeigt)
VCL : TStringList::IsDelimiterbis bald
akari
-
Es gibt z.Bsp. auch noch
boost::tokenizer
-
Danke für alle Antworten.
Ich habe jetzt "IsDelimiter" ins Rennen geschickt