Trong chương trình này, chúng ta sẽ xem cách phân tích cú pháp chuỗi được phân tách bằng dấu phẩy trong C ++. Chúng tôi sẽ đặt một chuỗi ở đó một số văn bản hiện diện và chúng được phân cách bằng dấu phẩy. Sau khi thực hiện chương trình này, nó sẽ chia các chuỗi đó thành một đối tượng kiểu vectơ.
Để tách chúng, chúng tôi sử dụng hàm getline (). Cú pháp cơ bản của hàm này như sau:
getline (input_stream, string, delim)
Hàm này được sử dụng để đọc một chuỗi hoặc một dòng từ luồng đầu vào.
Input: Some strings "ABC,XYZ,Hello,World,25,C++" Output: Separated string ABC XYZ Hello World 25 C++
Thuật toán
Step 1: Create stream from given string Step 2: While the stream is not completed Step 2.1: Take item before comma Step 2.2: Add item into a vector Step 3: Return the vector
Mã mẫu
#include<iostream> #include<vector> #include<sstream> using namespace std; main() { string my_str = "ABC,XYZ,Hello,World,25,C++"; vector<string> result; stringstream s_stream(my_str); //create string stream from the string while(s_stream.good()) { string substr; getline(s_stream, substr, ','); //get first string delimited by comma result.push_back(substr); } for(int i = 0; i<result.size(); i++) { //print all splitted strings cout << result.at(i) << endl; } }
Đầu ra
ABC XYZ Hello World 25 C++