stringstream
#include <sstream>
string s = "123abcd";
stringstream ss(s); // 또는 ss.str(s);
int a;
ss >> a; // 123
cout << ss.get() <<endl; // a 커서를 앞으로 이동하고 값 가져오기
cout << ss.get() <<endl; // b
ss.unget(); // 커서를 뒤로 이동
cout << ss.get() <<endl; // b
- >> 연산자로 읽으면 숫자, 문자열 등으로 자동으로 나눠서 읽을 수 있다.
- 문자열 읽을 땐 공백을 기준으로 자르기 때문에 공백으로 나누거나 공백으로 된 문자열을 이어 붙일 때 사용 가능
문자열 나눌 때 사용
regex_replace
#include <regex>
string s = "Hello World!";
cout << regex_replace(s, regex("[eo]"), "0") << endl;
// H0ll0 W0rld!
- 정규표현식 이용해서 문자열의 일부분을 원하는 문자로 교체 가능하다.