[cpp] kiểu dữ liệu string (phần 2)

by | Aug 5, 2024 | C/C++, Ngôn ngữ lập trình | 0 comments

Dưới đây là một số hàm cơ bản thường dùng với kiểu dữ liệu string trong C++:

  1. length() hoặc size(): Trả về độ dài của chuỗi.
   string str = "Hello, World!";
   cout << "Do dai chuoi: " << str.length() << endl;
  1. substr(pos, len): Trích xuất một phần của chuỗi, bắt đầu từ vị trí pos và có độ dài len.
   string str = "Hello, World!";
   string sub = str.substr(7, 5);
   cout << "Chuoi con: " << sub << endl; // Output: World
  1. find(sub, pos): Tìm vị trí đầu tiên của chuỗi con sub bắt đầu từ vị trí pos. Trả về npos nếu không tìm thấy.
   string str = "Hello, World!";
   size_t found = str.find("World");
   if (found != string::npos)
       cout << "'World' tim thay tai vi tri: " << found << endl;
   else
       cout << "'World' khong tim thay" << endl;
  1. append(str): Thêm chuỗi str vào cuối chuỗi hiện tại.
   string str = "Hello";
   str.append(", World!");
   cout << str << endl; // Output: Hello, World!
  1. insert(pos, str): Chèn chuỗi str vào vị trí pos của chuỗi hiện tại.
   string str = "Hello!";
   str.insert(5, ", World");
   cout << str << endl; // Output: Hello, World!
  1. erase(pos, len): Xóa len ký tự từ vị trí pos của chuỗi.
   string str = "Hello, World!";
   str.erase(5, 7);
   cout << str << endl; // Output: Hello!
  1. replace(pos, len, str): Thay thế len ký tự từ vị trí pos bằng chuỗi str.
   string str = "Hello, World!";
   str.replace(7, 5, "C++");
   cout << str << endl; // Output: Hello, C++!
  1. c_str(): Trả về con trỏ const char* trỏ đến mảng ký tự dạng C-style.
   string str = "Hello, World!";
   const char* cstr = str.c_str();
   cout << cstr << endl; // Output: Hello, World!

Ví dụ minh họa sử dụng các hàm trên:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string str = "Hello, World!";

    // length()
    cout << "Do dai chuoi: " << str.length() << endl;

    // substr()
    string sub = str.substr(7, 5);
    cout << "Chuoi con: " << sub << endl;

    // find()
    size_t found = str.find("World");
    if (found != string::npos)
        cout << "'World' tim thay tai vi tri: " << found << endl;
    else
        cout << "'World' khong tim thay" << endl;

    // append()
    str.append(" Welcome!");
    cout << "Chuoi sau khi them: " << str << endl;

    // insert()
    str.insert(5, ", there");
    cout << "Chuoi sau khi chen: " << str << endl;

    // erase()
    str.erase(5, 7);
    cout << "Chuoi sau khi xoa: " << str << endl;

    // replace()
    str.replace(7, 5, "C++");
    cout << "Chuoi sau khi thay the: " << str << endl;

    // c_str()
    const char* cstr = str.c_str();
    cout << "Chuoi C-style: " << cstr << endl;

    return 0;
}

Những hàm trên cung cấp các công cụ cơ bản để làm việc với chuỗi trong C++, giúp việc thao tác với chuỗi trở nên dễ dàng và hiệu quả.