Effizientes Aufteilen von C-Strings mithilfe von Tokens
Für das Aufteilen eines C-Strings std::string in Teilstrings basierend auf angegebenen Tokens gibt es mehrere Ansätze überlegen kann. Die effizienteste Lösung hängt von den spezifischen Anforderungen Ihrer Anwendung ab.
In Ihrem Fall werden die Zeichenfolgen durch ; getrennt. Zeichen enthalten und die Verwendung von C-String-Funktionen und Boost eingeschränkt ist, können Sie die Funktion std::getline() verwenden. Mit dieser Funktion können Sie Daten aus einem Stream in einen String einlesen und dabei an einem angegebenen Trennzeichen anhalten.
Nach diesem Ansatz sehen Sie hier ein einfaches Beispiel mit std::getline(), um Ihren String in separate Teilstrings aufzuteilen und zu speichern sie in einem Vektor:
#include#include #include using namespace std; int main() { string input = "denmark;sweden;india;us"; istringstream stream(input); vector split_strings; string token; // Read substrings separated by ';' while (getline(stream, token, ';')) { cout Dieser Code zeigt, wie man die Zeichenfolge Zeichen für Zeichen mit std::getline() liest und sie basierend auf dem ; aufteilt. Trennzeichen und speichern Sie die einzelnen Teilzeichenfolgen in einem Vektor.
Mit diesem Ansatz können Sie Ihre Zeichenfolge effizient in Token aufteilen und alle erforderlichen Verarbeitungs- oder Speichervorgänge gemäß den Anforderungen Ihrer Anwendung durchführen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3