Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya boleh menyemak sama ada rentetan mengandungi subrentetan dalam C?

Bagaimanakah saya boleh menyemak sama ada rentetan mengandungi subrentetan dalam C?

Barbara Streisand
Barbara Streisandasal
2024-11-24 08:29:09677semak imbas

How Can I Check if a String Contains a Substring in C  ?

Menentukan Kehadiran Subrentetan dalam Rentetan dalam C

Dalam C , tugas biasa yang dihadapi pengaturcara ialah menyemak sama ada rentetan mengandungi rentetan lain rentetan. Untuk mencapai matlamat ini, beberapa kaedah tersedia.

Satu kaedah yang cekap ialah menggunakan fungsi std::string::find. Fungsi ini mengembalikan kedudukan kejadian pertama subrentetan yang ditentukan dalam rentetan. Jika subrentetan tiada, std::string::npos dikembalikan, nilai khas yang menunjukkan bahawa subrentetan tiada.

Untuk menyemak sama ada rentetan mengandungi subrentetan, anda boleh menggunakan langkah berikut:

  1. Isytiharkan dua pembolehubah rentetan, s1 dan s2.
  2. Tetapkan rentetan yang anda ingin cari s1 dan subrentetan yang anda ingin cari kepada s2.
  3. Gunakan fungsi find untuk menentukan kedudukan s2 dalam s1.
  4. Bandingkan kedudukan yang dikembalikan dengan std::string::npos. Jika kedudukannya bukan std::string::npos, ini bermakna subrentetan ditemui.

Berikut ialah contoh:

if (s1.find(s2) != std::string::npos) {
    std::cout << "found!" << '\n';
}

Dalam kod ini, jika s2 ialah subrentetan s1, "ditemui!" akan dicetak. Ingat, kedua-dua s1 dan s2 mestilah daripada jenis std::string.

Atas ialah kandungan terperinci Bagaimanakah saya boleh menyemak sama ada rentetan mengandungi subrentetan dalam C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn