Menu
CoddyTech

Các hàm xử lý chuỗi phần 2

Thuộc phần Kiến thức nền tảng trong hành trình C++ của Coddy. Bài học 71 trên 74.

Dưới đây là một số hàm hữu ích khác dành cho chuỗi:

  • erase(pos, len): Xóa len ký tự bắt đầu từ vị trí pos khỏi chuỗi hiện tại.
  • find(str): Trả về vị trí xuất hiện đầu tiên của str trong chuỗi hiện tại. Nếu không tìm thấy, trả về một đối tượng có thể so sánh với -1.
  • clear(): Xóa tất cả ký tự khỏi chuỗi, khiến chuỗi trở thành chuỗi rỗng.
  • empty(): Trả về true nếu chuỗi (string) rỗng, false nếu không.

Ví dụ, dùng chuỗi sau:

std::string str = "Hello, World!";
int pos = str.find("World");
// Đầu ra: pos = 7 (vị trí bắt đầu của "World")
str.erase(5, 2);
// Đầu ra: "HelloWorld!"
str.clear();
// Đầu ra: "" (chuỗi rỗng)
bool isEmpty = str.empty();
// Trả về true nếu str không có ký tự nào
challenge icon

Thử thách

Dễ

Tạo một hàm (function) có tên stringSearchOperations, nhận một chuỗi (string) làm đầu vào và thực hiện các thao tác sau bằng các hàm xử lý chuỗi:

  • Tìm và in ra vị trí của ký tự dấu cách đầu tiên trong chuỗi.
  • Xóa 4 ký tự bắt đầu từ vị trí 5.
  • Kiểm tra xem chuỗi có chứa từ "You" hay không, rồi in ra "Found" hoặc "Not Found".
  • Xóa nội dung chuỗi rồi kiểm tra xem chuỗi có rỗng hay không.
  • In ra kết quả sau mỗi thao tác.

Dùng định dạng sau:

Space Found At: [Position of space]
After Erase: [String after erasing]
Contains You: [Found/Not Found]
Is Empty: [true/false]

Tự làm thử

#include <iostream>
#include <string>

void stringSearchOperations(std::string str) {
    // Tìm dấu cách đầu tiên

    // Xóa 4 ký tự bắt đầu từ vị trí 5

    // Kiểm tra xem chuỗi có chứa "You" không

    // Xóa nội dung chuỗi và kiểm tra xem chuỗi có rỗng không
}

int main() {
    std::string str;
    std::getline(std::cin, str);
    stringSearchOperations(str);
    return 0;
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch C++ online