(작성일 : 2008.04.03, 티스토리로 이사하며 옮긴 글)
erase() 를 어케 써볼까 했더만,
찾아보니 간단한게 있네요. 쪼아~ ^^
======================================================
아쉽게도 VC++이나 Java에서 지원하는 trim() 함수가 STL String에는 없습니다. 따라서, 간단하게 아래 코드를 사용하시면 되겠습니다.
1. string의 왼편의 white space를 trim하고 싶은 경우
using namespace std;
string str("hello");
int n = str.find_last_not_of("tvn");
if ( n != string::npos )
str.replace(n+1, str.length()-n,"");
cout<<str;
2. string의 오른편의 white space를 trim하고 싶은 경우
using namespace std;
string str("hello");
int n = str.find_first_not_of("tvn");
if ( n != string::npos )
str.replace(0, n,"");
cout<<str;
3. string의 양쪽의 white space를 trim하고 싶은 경우
using namespace std;
string str("hello");
int n;
n = str.find_first_not_of("tvn");
if ( n != string::npos )
str.replace(0, n,"");
n = str.find_last_not_of("tvn");
if ( n != string::npos )
str.replace(n+1, str.length()-n,"");
cout<<str;
'삽질미학 > C,C++' 카테고리의 다른 글
C 코드로 C++ 의 다형성 흉내내기 (0) | 2016.10.14 |
---|---|
map 컨테이너를 이용해 클래스 멤버함수의 콜백함수 등록과 호출하기 (0) | 2016.10.14 |
fseek(), feof() 함수 사용 시 주의 사항 (0) | 2016.10.13 |
특정 비트열 가져오는 GETBIT() 함수 (0) | 2016.10.13 |
[펌글] 텔넷 ssh-keygen으로 자동 로그인하기 (2) | 2016.06.19 |