Tách String Trong C++
Có thể bạn quan tâm
Hướng dẫn cách tách string trong C++. Bạn sẽ học được cách tự tạo hàm split trong C++ để tách string sau bài học này.
Tách string trong C++
Tách string trong C++ là xử lý tách các string con từ string ban đầu bằng các ký tự phân cách như tab \t, dấu cách, dấu phẩy hay ký tự xuống dòng chẳng hạn.
Do trong C++ không có sẵn hàm này, nên chúng ta phải tự tạo ra hàm split để tách string trong C++, bằng cách ứng dụng các hàm và phương thức có sẵn.
| string split(string str, string delimiter){ //str: chuỗi cần tách //delimiter: ký tự phân cách size_t pos = 0; string token; while ((pos = str.find(delimiter)) != string::npos) { token = str.substr(0, pos); cout << token << endl; str.erase(0, pos + delimiter.length()); } return str;} |
Tách string trong C++ bằng một ký tự phân cách
Bằng cách chỉ định đối số delimiter trong hàm split ở trên là một ký tự, ví dụ như là tab \t, dấu cách, dấu phẩy hay ký tự xuống dòng chẳng hạn, chúng ta có thể tách chuỗi string ban đầu thành các chuỗi nhỏ như sau:
| #include <iostream>using namespace std;string split(string str, string delimiter){ size_t pos = 0; string token; while ((pos = str.find(delimiter)) != string::npos) { token = str.substr(0, pos); cout << token << endl; str.erase(0, pos + delimiter.length()); } return str;} int main() { //Tách string bằng ký tự trống cout << split("Hello new world!", " ") << endl; //Tách string bằng dấu tab cout << split("Tom\tand\tJerry", "\t") << endl; return 0;} |
Kết quả, các ký tự được tách ra bởi ký tự phân cách như sau:
| Hellonewworld!TomandJerry |
Tách string trong C++ bằng một chuỗi ký tự phân cách
Bằng cách chỉ định đối số delimiter trong hàm split ở trên là một chuỗi ký tự, chúng ta có thể tách chuỗi string ban đầu thành các chuỗi nhỏ như sau:
| #include <iostream>using namespace std;string split(string str, string delimiter){ size_t pos = 0; string token; while ((pos = str.find(delimiter)) != string::npos) { token = str.substr(0, pos); cout << token << endl; str.erase(0, pos + delimiter.length()); } return str;} int main() { //Tách string bằng chuỗi ký tự " and " cout << split("Tom and you and me", " and ") << endl; //Tách string bằng chuỗi ký tự "*_*" cout << split("Good*_*Morning*_*MyLove", "*_*") << endl; return 0;} |
Kết quả, các ký tự được tách ra bởi chuỗi ký tự phân cách như sau:
| TomyoumeGoodMorningMyLove |
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn cách tạo hàm split để tách string trong C++ rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về C++ trong các bài học tiếp theo.
Tham khảo:https://stackoverflow.com/questions/14265581/parse-split-a-string-in-c-using-string-delimiter-standard-c
URL Link
https://laptrinhcanban.com/cpp/lap-trinh-cpp-co-ban/string-trong-cpp/tach-string-trong-cpp/
Từ khóa » Tách Các Từ Trong Xâu
-
Tách Các Từ Trong Chuỗi [Archive] - Diễn Đàn Tin Học
-
[C++ Cơ Bản] Tách Các Từ Trong Một Chuỗi | Thào A Vảng - YouTube
-
Tách Chuỗi Trong C (strtok)
-
Ví Dụ Tách Từ Trong Xâu - Lê Hữu Dũng
-
Làm Sao để Có Thể Tách Từng Từ Trong Xâu Của Mảng Các Xâu
-
Tách Chuỗi Thành Các Từ Riêng Lẽ? - UIT - Forum
-
Java - Tách Các Từ Có Trong Chuỗi Và Hiển Thị Mỗi Từ Trên 1 Dòng.
-
Làm Thế Nào để Tách Chuỗi Văn Bản Trong Excel Theo Dấu Phẩy ...
-
Tách Xâu Số Ra Khỏi Xâu Nhập Một Chuỗi Kí Tự Có Các Số Tự Nhiên
-
Bài Toán Tách Từ Với String Của STL C++ - ItLab Code Runner
-
Xâu Trong C++ - VNOI
-
Tách Từ Ra Khỏi Chuỗi Và đưa Vào Mảng Trong Lập Trình C?
-
Viết Chương Trình Tách Số Ra Khỏi Xâu ,rồi Tính Tổng (pascal) Câu Hỏi ...