C++去掉字符串中首尾空格和所有空格

c++去掉首尾空格是参考一篇文章的,但是忘记文章出处了,就略过吧。

去掉首尾空格的代码如下:

复制代码
 1 void trim(string &s)
 2 {  3  4 if( !s.empty() )  5  {  6 s.erase(0,s.find_first_not_of(" "));  7 s.erase(s.find_last_not_of(" ") + 1);  8  }  9 10 }
复制代码

去掉字符串中所有空格的代码如下:

复制代码
 1 void trim(string &s)
 2 {  3 /*  4  if( !s.empty() )  5  {  6  s.erase(0,s.find_first_not_of(" "));  7  s.erase(s.find_last_not_of(" ") + 1);  8  }  9 */ 10 int index = 0; 11 if( !s.empty()) 12  { 13 while( (index = s.find(' ',index)) != string::npos) 14  { 15 s.erase(index,1); 16  } 17  } 18 19 }
复制代码

测试代码如下:

复制代码
 1 int main()
 2 {
 3  4 cout << "-------------------------------------" << endl;  5  6 string pri = " 7ter 09, jdhfd iere*- ddw jjdjjdj ";  7 cout << "private string is : \"" << pri << "\"" << endl;  8  trim(pri);  9 cout << "after string is : \"" << pri << "\"" << endl; 10 11 cout << "-------------------------------------" << endl; 12 13 return 0; 14 }
复制代码

结果如下图:

c++去掉首尾空格是参考一篇文章的,但是忘记文章出处了,就略过吧。

去掉首尾空格的代码如下:

复制代码
 1 void trim(string &s)
 2 {  3  4 if( !s.empty() )  5  {  6 s.erase(0,s.find_first_not_of(" "));  7 s.erase(s.find_last_not_of(" ") + 1);  8  }  9 10 }
复制代码

去掉字符串中所有空格的代码如下:

复制代码
 1 void trim(string &s)
 2 {  3 /*  4  if( !s.empty() )  5  {  6  s.erase(0,s.find_first_not_of(" "));  7  s.erase(s.find_last_not_of(" ") + 1);  8  }  9 */ 10 int index = 0; 11 if( !s.empty()) 12  { 13 while( (index = s.find(' ',index)) != string::npos) 14  { 15 s.erase(index,1); 16  } 17  } 18 19 }
复制代码

测试代码如下:

复制代码
 1 int main()
 2 {
 3  4 cout << "-------------------------------------" << endl;  5  6 string pri = " 7ter 09, jdhfd iere*- ddw jjdjjdj ";  7 cout << "private string is : \"" << pri << "\"" << endl;  8  trim(pri);  9 cout << "after string is : \"" << pri << "\"" << endl; 10 11 cout << "-------------------------------------" << endl; 12 13 return 0; 14 }
复制代码

结果如下图:

猜你喜欢

转载自www.cnblogs.com/woodsp/p/9253268.html