원본출처 :
http://lunapiece.net/3814
이번엔 공백 처리 함수들이다. 로그인할때 아이디 처리라던지에 써먹은 기억이 있다 : )
#include <cstdio>
#include <string>
#include <boost/algorithm/string.hpp>
using namespace boost;
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
string str1 = " I love Lyn! ";
string str2;
trim(str1); //양옆의공백을다제거한다.
printf("trim : %s\n", str1.c_str());
str1 = " I love Lyn ";
str2 = trim_copy(str1); //양옆의공백을다제거하되원본을변경하지않고새로운문자열을리턴
printf("trim_copy : %s, %s\n", str1.c_str(), str2.c_str());
str1 = "####### I love Lyn #######";
trim_if(str1,is_any_of("#")); //제거할문자를직접지정해서제거한다.
printf("trim_if-1 : %s\n", str1.c_str());
str1 = "!@#!@#I love Lyn!@#!@#";
trim_if(str1,is_any_of("!@#")); //제거할문자열의길이에는제한이없다!
printf("trim_if-2 : %s\n", str1.c_str());
str1 = " I love Lyn ";
trim_left(str1); //왼쪽의공백을제거한다.
printf("trim_left : %s\n", str1.c_str());
//물론trim_left_copy, trim_left_if, trim_right, trim_right_copy, trim_right_copy_if 등등.. 있을함수는다있다.
//여기서는몇가지만소가했지만네이밍규칙을보면다알수있을수준이다.
return 0;
}