C++ 实现去掉string字符串前后的空白字符
C++标准库提供的字符串类string没有提供类似CString中Trim方法,该方法功能为去除字符串前后的空白字符。利用string自身一些方法可以很容易实现该功能。
如下:
1 void Trim(string & str)
2 {
3 string blanks("\f\v\r\t\n ");
4 str.erase(0,str.find_first_not_of(blanks));
5 str.erase(str.find_last_not_of(blanks) + 1);
6 }
测试如下:
1 int _tmain(int argc, _TCHAR* argv[])
2 {
3 string s1("\t string ");
4 cout << "[" << s1 << "]" << endl;
5 Trim(s1);
6 cout << "After Trim:\n";
7 cout << "[" << s1 << "]" << endl;
8 return 0;
9 }