Heim > Backend-Entwicklung > C++ > Hauptteil

Wie teile ich Zeichenfolgen mit mehreren Trennzeichen auf?

Linda Hamilton
Freigeben: 2024-11-11 04:03:03
Original
422 Leute haben es durchsucht

How to Split Strings with Multiple Delimiters?

Aufteilen von Zeichenfolgen mit mehreren Trennzeichen [Duplikat]

Bei der Textverarbeitung besteht häufig die Notwendigkeit, eine Zeichenfolge in einzelne Wörter oder Token aufzuteilen. Während Standardtechniken zur Zeichenfolgenaufteilung bei der Handhabung einzelner Trennzeichen hervorragend sind, wird die Aufgabe bei mehreren Trennzeichen schwieriger.

Problem:

Gegeben eine Zeichenfolge und eine Reihe von Trennzeichen, wie Können wir die Zeichenfolge unter Berücksichtigung aller angegebenen Wörter in Wörter aufteilen? Trennzeichen?

Lösung:

Um eine Zeichenfolge mithilfe mehrerer Trennzeichen effektiv aufzuteilen, nutzen wir eine Kombination aus String-Stream- und Teilstring-Operationen. Hier ist eine modifizierte Version des bereitgestellten Codes:

std::stringstream stringStream(inputString);
std::string line;
while(std::getline(stringStream, line)) {
    std::size_t prev = 0, pos;
    auto delimiters = " ';";  // Customize delimiter string here
    while ((pos = line.find_first_of(delimiters, prev)) != std::string::npos) {
        if (pos > prev)
            wordVector.push_back(line.substr(prev, pos-prev));
        prev = pos+1;
    }
    if (prev < line.length())
        wordVector.push_back(line.substr(prev, std::string::npos));
}
Nach dem Login kopieren

Erklärung:

  • Wir iterieren über jede Zeile in der Eingabezeichenfolge mit std::getline.
  • Für jede Zeile verwenden wir std::find_first_of, um die Position des ersten Trennzeichens in der zu ermitteln Zeile.
  • Wenn ein Trennzeichen gefunden wird, fügen wir die Teilzeichenfolge zwischen dem vorherigen Trennzeichen und dem aktuellen Trennzeichen zum Wortvektor hinzu.
  • Wir aktualisieren dann prev, um auf das Zeichen nach dem Trennzeichen zu zeigen.
  • Nachdem wir die gesamte Zeile verarbeitet haben, fügen wir den verbleibenden Teilstring zum Wortvektor hinzu, sofern dieser nicht leer ist.

Das obige ist der detaillierte Inhalt vonWie teile ich Zeichenfolgen mit mehreren Trennzeichen auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage