Tổng Hợp Các Thao Tác Xử Lí Chuỗi Trong C++
Có thể bạn quan tâm
Ở bài trước, Isinhvien đã giới thiệu đến các bạn cách khởi tạo, gán giá trị và nhập xuất chuỗi trong C++. Và trong bài viết này, Isinhvien sẽ tiếp tục chia sẻ đến các bạn các thao tác cơ bản để xử lí chuỗi (string) trong C++ để giúp các bạn làm việc với chuỗi nhanh chóng và dễ dàng hơn nhé!
Xác định số kí tự trong chuỗi C++
Để xác định số kí tự trong chuỗi cũng như tính độ dài chuỗi thì ta có thể dùngmột trong 2 phương thức sau đây:
- Dùng lenght()
- Dùng size()
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str; cout << "Nhap vao mot chuoi: "; getline(cin, str); // Nhập chuỗi cout << "Do dai chuoi vua nhap: " << str.size() << endl; cout << "Do dai chuoi vua nhap: " << str.length(); return 0; }Kết quả thực thi:
Nhap vao mot chuoi: Isinhvien Do dai chuoi vua nhap: 9 Do dai chuoi vua nhap: 9Vậy cả hai phương thức length và size của lớp string đều được dùng để tính độ dài của chuỗi kí tự.
Kiểm tra chuỗi rỗng hay không trong C++
Để kiểm tra xem một chuỗi có rỗng hay không ta dùng phương thức empty, khi chuỗi rỗng thì trả về true, ngược lại thì trả về false.
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str="Isinhvien"; if(str.empty()) cout<<"Chuoi rong"; else cout<<"Chuoi khong rong"; return 0; }Kết quả thực thi
Chuoi khong rongBiến chuỗi thành chuỗi rỗng trong C++
Để biến một chuỗi thành rỗng, ta sẽ dùng phương thức clear.
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str="Isinhvien"; cout << "Truoc khi xoa: "<< str<< endl; str.clear(); cout << "Sau khi xoa: " << str; }Kết quả thực thi:
Truoc khi xoa: Isinhvien Sau khi xoa:Truy cập đến một phần tử trong chuỗi C++
Để truy cập đến một phần tử trong chuỗi, ta có thể làm 2 cách sau:
- tên_chuỗi [vị_trí]
- tên_chuỗi.at(vị_trí)
Nếu chương trình phát hiện hành vi truy xuất đến phần tử có chỉ số không hợp lệ (vị_trí < 0 hoặc vị trí >= string length), Chương trình sẽ kết thúc và thông báo dòng lệnh gây ra lỗi cho bạn.
Ta cũng có thể truy cập nhanh đến phần tử đầu tiên trong chuỗi với phương thức front() và phần tử cuối cùng trong chuỗi với phương thức back().
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str="Isinhvien"; cout << " Phan tu thu 1:" << str.front() << endl; cout << " Phan tu thu 2:" << str[1] << endl; cout << " Phan tu thu 3:" << str.at(2) << endl; cout << " Phan tu thu 4:" << str.back() << endl; }Kết quả thực thi:
Phan tu thu 1:I Phan tu thu 2:s Phan tu thu 3:i Phan tu thu 4:nThêm bớt vào kí tự cuối cùng của chuỗi trong C++
Để thêm một phần tử vào sau chuỗi, ta dùng phương thức push_back(), ngược lại phương thức pop_back() sẽ xóa đi kí tự cuối cùng hiện tại của chuỗi.
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str="Isinhviec"; str.pop_back(); str.push_back('n'); cout << str; }Kết quả
IsinhvienNối chuỗi kí tự trong C++
Để nối thêm một chuỗi kí tự vào sau một chuỗi đã có, ta sẽ dùng phương thức append. Ta có thể nối với một chuỗi khác hoặc một mảng kí tự nào đó. Để tiết kiệm thời gian hơn. ta cũng có thể dùng toán tử += để nối 2 chuỗi với nhau.
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str="Isinhvien"; string s="com"; str.append("."); str+=s; cout << str; }Kết quả:
Isinhvien.comSo sánh 2 chuỗi với nhau trong C++
Để so sánh 2 chuỗi, ta sẽ dùng phương thức compare, trả về 0 khi 2 chuỗi giống nhau hoàn toàn, lớn hơn 0 nếu chuỗi ta cần so lớn hơn và nhỏ hơn 0 nếu chuỗi ta cần so nhỏ hơn.
Ví dụ:
#include <iostream> #include <string> using namespace std; int main() { string str1; string str2; cout << "Nhap str1: "; cin>> str1; cout << "Nhap str2: "; cin>> str2; if(str1.compare(str2)==0) cout << "str1=str2"; else if(str1.compare(str2)>0) cout << "str1>str2"; else cout << "str1<str2"; }Kết quả 1
Nhap str1: isinhvien Nhap str2: Isinhvien str1>str2Kết quả 2:
Nhap str1: Isinhvien Nhap str2: Isinhvien.com str1<str2Đảo chuỗi trong C++
Để đảo một chuỗi trong C++ ta sẽ dùng hàm reverse, để dùng hàm nãy thì ta phải #include<algorithm> mới dùng được.
Ví dụ:
#include <iostream> #include <string> #include <algorithm> using namespace std; int main() { string str="Isinhvien"; reverse(str.begin(), str.end()); cout << str; }Kết quả:
neivhnisIHi vọng sau bài viết này thì các bạn sẽ thành thạo được các thao tác với chuỗi trong ngôn ngữ C++ nhé! Nếu thấy bài viết này của Isinhvien hay và bổ ích thì hãy chia sẻ nó đến với bạn bè của mình để ủng hộ cho Isinhvien và giúp Isinhvien ngày càng phát triển hơn nhé! Chúc các bạn thành công!
Bài viết khác liên quan đến chuỗi c++
- Khởi tạo, gán giá trị và nhập xuất chuỗi (string) trong C++
Từ khóa » Chuỗi Rỗng Trong C++
-
Kiểm Tra Chuỗi Rỗng Trong C++
-
Kiểm Tra điều Kiện Nhập Chuỗi Rỗng - Programming - Dạy Nhau Học
-
Cơ Bản Về Chuỗi Ký Tự Trong C++ (An Introduction To Std::string)
-
Xâu Trong C++ - VNOI
-
Chuỗi Trống – Wikipedia Tiếng Việt
-
Chuỗi (String) Trong C/C++
-
Phương Thức Khởi Tạo Chuỗi Rỗng Trong C ++ - HelpEx
-
Chuỗi (String) Trong C - Học Lập Trình C Online - Viettuts
-
Xâu Ký Tự Trong C++
-
Phân Biệt String.empty ,null Và "" Trong C - Cộng đồng C Việt
-
Chuỗi Kí Tự Trong C++ PDF - Download Thư Viện Tài Liệu Miên Phí
-
Cách Khai Báo Chuỗi Trong C Và Các Kiến Thức Liên Quan | Ironhack
-
[Lập Trình C++ Cơ Bản] Bài 8: Xâu Kí Tự (Phần 1) - Viblo
-
String Trong C++ - Techacademy