Was ist der beste Weg, um trim std::string?

Derzeit bin ich über den folgenden code nach rechts trimmen alle std::strings in meinen Programmen:

std::string s;
s.erase(s.find_last_not_of(" \n\r\t")+1);

Es funktioniert gut, aber ich Frage mich, ob gibt es einige end-Fällen, in denen es möglicherweise nicht?

Natürlich Antworten mit eleganten alternativen und auch zu den linken Trimm-Lösung sind willkommen.

Die Antworten auf diese Frage sind ein Beweis dafür, wie ohne die C++ standard-Bibliothek ist.
Und es immer noch nicht über diese Funktion in C++11.
Toll, nicht wahr! Blick auf die konkurrierenden Optionen, die wir jetzt zur Verfügung haben, die nicht durch eine einzelne person, die die Idee des "das Weg, wir müssen es tun"!
Funktionalität innerhalb einer Art, nun, das ist eine design-Entscheidung, und das hinzufügen einer trim-Funktion, um einen string könnte (zumindest unter c++) nicht die beste Lösung sowieso - aber weder standard-Weg, es zu tun, statt, sodass jeder Nutzer ärgern über die gleichen solche kleinen Fragen immer und immer wieder, ist sicherlich nicht zu helfen, wer entweder
Sie können die Frage stellen, warum trimmen Funktionen sind nicht eingebaut in die std::string Klasse, wenn er Funktionen wie diese, die in anderen Sprachen so gut zu benutzen (Python zum Beispiel).

InformationsquelleAutor Milan Babuškov | 2008-10-19

Schreibe einen Kommentar