今天无意之间看到了通用类的三个函数,是用STL实现字符串去掉首尾空格,方法用的颇为简洁,记录下来分享和学习下。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| #include <string>;
#include <algorithm>;
using namespace std;
string& lTrim(string &ss)
{
string::iterator p=find_if(ss.begin(),ss.end(),not1(ptr_fun(isspace)));
ss.erase(ss.begin(),p);
return ss;
}
string& rTrim(string &ss)
{
string::reverse_iterator p=find_if(ss.rbegin(),ss.rend(),not1(ptr_fun(isspace)));
ss.erase(p.base(),ss.end());
return ss;
}
string& trim(string &st)
{
lTrim(rTrim(st));
return st;
}
|