Seite 1 von 1

QString und replace

Verfasst: 4. August 2014 14:19
von nelo
Hi,

ich bin gerade dabei folgendes Problem zu lösen komme aber noch nicht so richtig auf den Lösungsansatz.
Ich hoffe ihr wisst Rat.

Ich habe ein QString der z.B. folgendes enthält

Code: Alles auswählen

QString text = "Dies ist ein langer Text der über den Rand hinaus geht"
Ich möchte nun die replace Funktion benutzen um z.B. nach dem 8 Wort ein Umbruch (\n) anstatt dem Leerzeichen einfügen.
Aber wie bekomme ich das hin?

Mfg Nelo

Re: QString und replace

Verfasst: 4. August 2014 17:32
von Christian81
Das 8. Leerzeichen suchen und dieses ersetzen. Dazu gibt es keine Funktion - musst du also selbst kurz schreiben.

Re: QString und replace

Verfasst: 6. August 2014 08:09
von nelo
Ok hab das Problem gelöst
Hab mir einfach eine Schleife gebaut die Solange minimiert wird bis die gewüschte Zeichenanzahl ereicht wurde die es nicht überschreiten soll und das
erste Leerzeichen vor der gewünschte Länge nimmt.

Code: Alles auswählen

int i, s;

for(i = text.indexOf(" ",23), s > 23; i--)
s = text.indexOf(" ", i)

qDebug()<<"gekürzter String mit Umbruch: "<< text.replace(s,1,"\n");    //Dies ist ein langer text\nder über den Rand hinaus geht