Hàm xử lý chuỗi trong c

Ngoài mảng ký tự, chúng ta có thể sử dụng lớp string để lưu trữ chuỗi ký tự trong C++.

Trong C++, bạn có thể tạo ra một đối tượng string để lưu trữ chuỗi ký tự. Không giống mảng ký tự, đối tượng string không có kích thước cố định và có thể mở rộng nếu cần.

Đối tượng string được tạo bởi lớp string trong thư viện #include .

Cú pháp khai báo đối tượng string:

string;

Có thể gán một hằng string hoặc các string khác vào một biến string.

string str1 = "I love";
string str2 = str1;

Có thể gán hai chuỗi string, nối chuỗi bằng toán tử “+”, so sánh hai chuỗi bằng các toán tử quan hệ (<, >, ==, !=,…). Một string với chiều dài n, những vị trí của các ký tự của string có phạm vi từ 0 tới n – 1. Có thể truy xuất ký tự trong string như mảng với cú pháp: [vị trí].

string str1 = "Apple"; string str2 = "apple";
string str3 = "apples"; string str4 = "orange";
bool t1 = (str1 == str2); // t1 = false
bool t2 = (str1 < str2); //t2 = true
bool t3 = (str2 < str3); //t3 = true
bool t4 = (str3 != str4); //t4 = true
bool t5 = (str4 > str3); // t5 = true
string myMsg = "How are you doing?";
cout<

2. Các hàm thành viên trong lớp string

Thư viện rất nhiều hàm cho phép xử lý chuỗi. Ví dụ: tìm chiều dài chuỗi, so sánh hai chuỗi, tìm kiếm/rút trích chuỗi con, nối chuỗi,…

Hàm s.length()

Trả về số lượng ký tự trong string s.

string s1 = "introduction to programming";
cout<<"length of s1 = "<

Hàm s.substr(x, y)

Rút trích một chuỗi con với chiều dài y bắt đầu tại vị trí x. Nếu không có y, một chuỗi con từ vị trí x tới cuối chuỗi sẽ được rút trích.

string s1 = "introduction to programming";
cout<<"substring has 10 characters of s1 start at 5:"<

Hàm s.find(r)

Kiểm tra chuỗi string r có xuất hiện trong chuỗi s hay không. Nếu có thì trả về vị trí bắt đầu xuất hiện chuỗi r trong chuỗi s.

string s1 = "introduction to programming";
cout<<"position of 'duc' string in s1:"<

Hàm s.erase(x, n)

Xóa n ký tự bắt đầu tại vị trí x.

string s1 = "introduction to programming";
s1.erase(5, 15);
cout<<"s1 string after erase:"<

Hàm s.replace(x, n, str)

Thay thế n ký tự tại vị trí bắt đầu là x bằng chuỗi str. Lưu ý: chiều dài của str có thể lớn hơn n.

string s1 = "introduction to programming";
s1.replace(5, 10, "123123123");
cout<<"s1 string after replace:"<

Hàm s1.compare(s2)

So sánh chuỗi s1 với s2. Giá trị trả về là -1 nếu s1 < s2, bằng 0 nếu s1 == s2, là 1 nếu s1 > s2.

string s1 = "introduction to programming";
string s2 = "c++ programming language";
cout<<"s1 compare s2:"<

Hàm s1.swap(s2)

Hoán đổi nội dung hai chuỗi.

string s1 = "introduction to programming";
string s2 = "c++ programming language";
s1.swap(s2);
cout<<"s1 after swap:"<

Hàm s1.insert(index, s2)

Thêm chuỗi s2 vào s1 sau vị trí index.

  • Kỹ thuật lập trình truyền con trỏ cho hàm trong C++
  • Các chỉ định truy cập (access modifier) trong PHP
  • Biến toàn cục và biến cục bộ trong chương trình
  • Session là gì? Sử dụng session trong PHP
  • Nhập và xuất cơ bản (basic input and output) trong Java

string s1 = "introduction to programming";
string s2 = "c++ programming language";
s1.insert(10, s2);
cout<<"s1 after insert s2:"<