Ở 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é!
Tóm Tắt
Xác định số kí tự trong chuỗi C++
Để xác lập số kí tự trong chuỗi cũng như tính độ dài chuỗi thì ta hoàn toàn có thể dùngmột trong 2 phương pháp sau đây :
- Dùng lenght()
- Dùng size()
Ví dụ:
Bạn đang đọc: Tổng hợp các thao tác xử lí chuỗi (string) trong C++
#include#include 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: 9
Vậ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#include 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 rong
Biế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#include 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 vấn đến một thành phần trong chuỗi, ta hoàn toàn 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 hoàn toàn có thể truy vấn nhanh đến thành phần tiên phong trong chuỗi với phương pháp front ( ) và thành phần ở đầu cuối trong chuỗi với phương pháp back ( ) .
Ví dụ:
#include#include 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:n
Thê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#include using namespace std; int main() { string str="Isinhviec"; str.pop_back(); str.push_back('n'); cout << str; }
Kết quả
Isinhvien
Nố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#include using namespace std; int main() { string str="Isinhvien"; string s="com"; str.append("."); str+=s; cout << str; }
Kết quả:
Isinhvien.com
So sánh 2 chuỗi với nhau trong C++
Để so sánh 2 chuỗi, ta sẽ dùng phương pháp compare, trả về 0 khi 2 chuỗi giống nhau trọn vẹ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#include 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 Kết quả 1
Nhap str1: isinhvien Nhap str2: Isinhvien str1>str2Kết quả 2:
Nhap str1: Isinhvien Nhap str2: Isinhvien.com str1Đả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
mới dùng được. Ví dụ:
#include#include #include 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++
Source: https://final-blade.com
Category: Kiến thức Internet