QString trimmed() Bug?

Alles rund um die Programmierung mit Qt
Antworten
Sym
Beiträge: 139
Registriert: 15. Mai 2006 15:38
Wohnort: Bremen

QString trimmed() Bug?

Beitrag von Sym »

Hallo,

folgender Code funktioniert bei mir nicht:

Code: Alles auswählen

QString s("bla bla");
  qDebug() << s << "  " << s.trimmed();
Ich nutze Qt 4.1.3 unter Windows. Habt ihr ähnliche Probleme

Umgangen habe ich das Problem jetzt durch

Code: Alles auswählen

s.replace(" ", "");
was allerdings eine Referenz zurück gibt und den String somit ändert. Ist natürlich handlebar, aber unschön.
ChMaster
Beiträge: 252
Registriert: 23. Februar 2005 14:44
Wohnort: RP -> Alzey
Kontaktdaten:

Beitrag von ChMaster »

servus,

.trimmed(); nimmt nur leerzeichen vom anfang und ende weg, aber nicht
im string selber.
ChMaster
------------ Projekte------------
DBoxFE
DMS
First4 (Plugin-Develper)
Sym
Beiträge: 139
Registriert: 15. Mai 2006 15:38
Wohnort: Bremen

Beitrag von Sym »

Hmm,

anscheinend habe ich mich da in der Doku verlesen.

Danke.
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

QString str("bla bla");

mit QStringList list = str.split(" ");
und dann QString sauber = list.join("");

bekommst du alle leere raus....
Sym
Beiträge: 139
Registriert: 15. Mai 2006 15:38
Wohnort: Bremen

Beitrag von Sym »

patrik08 hat geschrieben:QString str("bla bla");

mit QStringList list = str.split(" ");
und dann QString sauber = list.join("");

bekommst du alle leere raus....
Da finde ich replace aber schöner. Somit benötige ich auch keinen weiteren Header (QStringList) in meiner Klasse. ;) Aber danke.
Der Neue
Beiträge: 24
Registriert: 31. Mai 2006 14:45

Beitrag von Der Neue »

Da sich ja auch bei replace der String verändert, könntest du ja auch einfach folgendes schreiben:

QString str("bla bla");
str.remove(' ');

Das verdeutlicht die tatsächliche Absicht besser, es sei denn ich täusch mich.
Gesegnet sein all die, die nichts zu sagen haben
und trotzdem den Mund halten.
Antworten