이 섹션에서는 C++에서 문자열을 토큰화하는 방법을 살펴봅니다. C에서는 문자 배열에 strtok() 함수를 사용할 수 있습니다. 여기에 문자열 클래스가 있습니다. 이제 해당 문자열에서 일부 구분 기호를 사용하여 문자열을 자르는 방법을 살펴보겠습니다.
C++ 기능을 사용하려면 문자열을 문자열 스트림으로 변환해야 합니다. 그런 다음 getline() 함수를 사용하여 작업을 수행할 수 있습니다. getline() 함수는 문자열 스트림, 출력을 보낼 다른 문자열, 스트림 스캔을 중지하는 구분 기호를 사용합니다.
함수가 어떻게 작동하는지 이해하기 위해 다음 예를 살펴보겠습니다.
예시 코드
#include <iostream> #include <vector> #include <sstream> using namespace std; int main() { string my_string = "Hello,World,India,Earth,London"; stringstream ss(my_string); //convert my_string into string stream vector<string> tokens; string temp_str; while(getline(ss, temp_str, ',')){ //use comma as delim for cutting string tokens.push_back(temp_str); } for(int i = 0; i < tokens.size(); i++) { cout << tokens[i] << endl; } }
출력
Hello World India Earth London