C++replace_all strip函数

  1. // replace all occurance of t in s to w  
  2. void replace_all(std::string & s, std::string const & t, std::string const & w)  
  3. {  
  4.   string::size_type pos = s.find(t), t_size = t.size(), r_size = w.size();  
  5.   while(pos != std::string::npos){ // found   
  6.     s.replace(pos, t_size, w);   
  7.     pos = s.find(t, pos + r_size );   
  8.   }  
  9. }  
  10.   
  11. string strip(string const & s, char c = ' ')  
  12. {  
  13.   string::size_type a = s.find_first_not_of(c);  
  14.   string::size_type z = s.find_last_not_of(c);  
  15.   if(a == string::npos){  
  16.     a = 0;  
  17.   }  
  18.   
  19.   if(z == string::npos){  
  20.     z = s.size();  
  21.   }  
  22.   return s.substr(a, z);  
  23. }  

你可能感兴趣的:(C++replace_all strip函数)