Kes-Tidak Peka XPath mengandungi() Fungsi
Dalam XPath, fungsi contains() adalah peka huruf besar-kecil. Walau bagaimanapun, terdapat cara untuk mengatasi had ini.
Kaedah 1: Terjemah Aksara
Kaedah ini melibatkan menterjemah aksara kepada huruf kecil atau huruf besar sebelum menyemak subrentetan:
/html/body//text()[ contains( translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), 'test' ) ]
Ini menukar semua huruf besar dalam teks kepada huruf kecil sebelum menyemak subrentetan "ujian."
Kaedah 2: Ungkapan XPath Dinamik
Menggunakan bahasa skrip seperti JavaScript, anda boleh membina ungkapan XPath dinamik yang mengendalikan ketidakpekaan huruf besar/kecil:
<code class="javascript">function xpathPrepare(xpath, searchString) { return xpath.replace("$u", searchString.toUpperCase()) .replace("$l", searchString.toLowerCase()) .replace("$s", searchString.toLowerCase()); } xp = xpathPrepare("//text()[contains(translate(., '$u', '$l'), '$s')]", "Test");</code>
Ini menggantikan ruang letak dalam ungkapan XPath dengan versi rentetan carian huruf besar, huruf kecil dan huruf kecil.
Pertimbangan Tambahan
Atas ialah kandungan terperinci Bagaimana untuk Mencapai Carian Tidak Peka Huruf dalam XPath Menggunakan Fungsi contains()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!