Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Semak sama ada Rentetan Mengandungi Sebarang Kata Kunci daripada Tatasusunan (Tidak Peka Huruf)?

Bagaimana untuk Semak sama ada Rentetan Mengandungi Sebarang Kata Kunci daripada Tatasusunan (Tidak Peka Huruf)?

DDD
DDDasal
2024-11-14 10:11:01338semak imbas

How to Check if a String Contains Any Keyword from an Array (Case-Insensitive)?

Menentukan Kemasukan Rentetan daripada Tatasusunan (Tidak Peka Huruf Besar)

Dalam pengaturcaraan, anda mungkin menghadapi situasi di mana anda perlu mengesahkan sama ada sesuatu yang diberikan rentetan mengandungi sebarang padanan daripada tatasusunan item. Khususnya, anda ingin menyemak padanan tidak sensitif huruf besar atau kecil.

Keperluan:

Andaikan anda mempunyai pembolehubah rentetan ($rentetan) dan tatasusunan ($array) mengandungi kata kunci tertentu. Anda ingin mencipta fungsi yang dipanggil "mengandungi()" untuk menentukan sama ada $string mengandungi mana-mana kata kunci dalam $array, tanpa mengira kes.

Penyelesaian:

Bahasa pengaturcaraan asli selalunya tidak menyediakan fungsi terbina dalam untuk mengendalikan senario ini. Oleh itu, kami mengesyorkan agar anda melaksanakan fungsi "mengandungi()" tersuai:

function contains($str, array $arr)
{
    foreach($arr as $a) {
        if (stripos($str,$a) !== false) return true;
    }
    return false;
}

Penjelasan:

Fungsi "mengandungi()" mengambil rentetan ($str ) dan tatasusunan $arr sebagai input. Ia berulang melalui setiap item dalam $arr menggunakan gelung foreach. Untuk setiap item $a, ia menggunakan fungsi stripos() untuk menyemak sama ada ia wujud dalam $str, mengabaikan perbezaan kes. Jika mana-mana item tatasusunan hadir dalam $str, fungsi itu kembali benar. Jika tidak, ia akan kembali palsu.

Atas ialah kandungan terperinci Bagaimana untuk Semak sama ada Rentetan Mengandungi Sebarang Kata Kunci daripada Tatasusunan (Tidak Peka Huruf)?. 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