Seite 1 von 1

QStringList aus QString.split löscht Trennsymbole :(

Verfasst: 25. September 2011 18:44
von MenschMarcus
Hey QT Freunde,

ich habe ein einfaches aber nervenaufreibendes Problem:

Ich habe einen ganz normalen QString: "Hallo Welt. Ich bin Marcus. Ich habe ein Problem. QString split löscht das Trennsymbol. Das ist doof."

ich möchte nun eine QStringList bekommen, die aus den folgenden Zeichenketten besteht:
"Hallo Welt."
"Ich bin Marcus."
"Ich habe ein Problem."

Ich benutze die Funktion:

Code: Alles auswählen

QStringList SubStringList = verticesString.split(".",QString::KeepEmptyParts);


und ich bekomme diese Zeichenketten:
"Hallo Welt"
"Ich bin Marcus"
"Ich habe ein Problem"

Beim Ersten der QStringList wird also das Trennsymbol "." gelöscht. Das ist dumm und das will ich nicht !!! Wie mache ich das?

Ich möchte eine Funktion, mit der ich eine QStringList aus einem QString erstellen kann, welche das Trennsymbol zwischen den QStrings beibehält und nicht löscht!

Vielen Dank für eure Hilfe!

Liebe Grüße,
Marcus

Re: QStringList aus QString.split löscht Trennsymbole :(

Verfasst: 25. September 2011 19:09
von franzf
Trennsymbol heißt halt "ich trenne", das ist die einzige Aufgabe, zum Inhalt zählt das nicht.
Du wirst halt deine StringList durchiterieren müssen und bei jedem Eintrag einen "." anhängen.

Re: QStringList aus QString.split löscht Trennsymbole :(

Verfasst: 25. September 2011 19:20
von MenschMarcus
danke für die Antwort. Das ist aber extrem bescheuert!

In meinem speziellen Fall habe ich aber als Trennzeichen entweder M oder m (ich wil SVG pathes auslesen). Nach der Trennung wieß ich ja nicht mehr, ob es ein M oder ein m war ?!?

Re: QStringList aus QString.split löscht Trennsymbole :(

Verfasst: 25. September 2011 19:54
von franzf
Dann darfst du halt nicht split verwenden, sondern musst dir ne eigene Parsing+Split-Funktion schreiben, die sich so verhält wie du es willst. Sollte ja nicht so schwer sein (durch deinen String wandern, nach deinem Zeichen suchen, letzte Position speichern und bei Fund passenden String an eine Liste anhängen, neue Position speichern).

Re: QStringList aus QString.split löscht Trennsymbole :(

Verfasst: 25. September 2011 20:00
von upsala
Ach, du willst gar nicht nach einem Punkt auftrennen, sondern vor einem Buchstaben? Wenn du deine Aufgabenstellung richtig beschreibst könnte man dir vielleicht helfen. Wie soll denn jetzt der Vorgabestring aussehen?