Heim >Backend-Entwicklung >C++ >Wie kann std::getline() zum Teilen von Zeichenfolgen mit Token in C verwendet werden?
Verwenden von getline() zum Teilen von Strings mit Tokens
Wenn Sie mit Strings in C arbeiten, ist es notwendig, diese in kleinere Segmente aufzuteilen auf bestimmte Trennzeichen. Eine gängige Methode, dies zu erreichen, ist die Verwendung der Funktion std::getline(), die eine flexible Möglichkeit bietet, Teilzeichenfolgen basierend auf tokenisierten Trennzeichen zu extrahieren.
Im gegebenen Szenario haben wir eine Zeichenfolge, die aus getrennten Wörtern besteht Durch Semikolons können wir std::getline() verwenden, um die Zeichenfolge effizient in einzelne Komponenten aufzuteilen. Der folgende Codeausschnitt zeigt, wie dies implementiert wird:
#include <sstream> #include <iostream> #include <vector> using namespace std; int main() { vector<string> strings; istringstream f("denmark;sweden;india;us"); string s; while (getline(f, s, ';')) { cout << s << endl; strings.push_back(s); } }
In diesem Code erstellen wir zunächst einen Vektor zum Speichern der geteilten Zeichenfolgen. Anschließend übergeben wir die Zielzeichenfolge „denmark;sweden;india;us“ an ein istringstream-Objekt, das es uns ermöglicht, die Zeichenfolge als Stream zu behandeln.
Die Schlüsseloperation ist die Verwendung von getline() to Extrahieren Sie Teilzeichenfolgen, bis wir das Ende des Streams erreichen. Die Funktion getline() benötigt drei Parameter: den Eingabestream, einen Verweis auf eine Zeichenfolge zum Speichern der extrahierten Teilzeichenfolge und ein Trennzeichen. In diesem Fall verwenden wir ein Semikolon als Trennzeichen, um die Zeichenfolge bei jedem Vorkommen zu teilen.
Innerhalb der Schleife rufen wir jede Teilzeichenfolge durch den Aufruf von getline() ab und speichern sie in der Zeichenfolgenvariablen s. Anschließend geben wir die Teilzeichenfolge zur Bestätigung aus und fügen sie zur weiteren Verarbeitung dem Zeichenfolgenvektor hinzu.
Mit diesem Ansatz können wir eine Zeichenfolge effektiv auf der Grundlage von Tokens oder Trennzeichen aufteilen, was die Handhabung einzelner Segmente nach Bedarf erleichtert .
Das obige ist der detaillierte Inhalt vonWie kann std::getline() zum Teilen von Zeichenfolgen mit Token in C verwendet werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!