Membuang Aksara Bukan Abjad Angka dan Menggantikan Ruang dengan Tanda Sempang
Masalah: Pengguna menghadapi cabaran apabila menukar tajuk kepada URL yang hanya mengandungi huruf, nombor dan sempang. Mereka mencari cara untuk menanggalkan aksara khas dan menggantikan ruang dengan sempang.
Penyelesaian: Ungkapan Biasa (Regex)
Ekspresi biasa ialah alat yang berkuasa untuk pemadanan corak dan rentetan manipulasi. Ia boleh digunakan untuk mencapai transformasi yang diingini.
Kod:
<code class="php">function clean($string) { // Replace spaces with hyphens $string = str_replace(' ', '-', $string); // Remove non-alphanumeric characters and hyphens $string = preg_replace('/[^A-Za-z0-9\-]/', '', $string); // Replace multiple hyphens with a single one $string = preg_replace('/-+/', '-', $string); return $string; }</code>
Penggunaan:
<code class="php">echo clean('a|"bc!@£de^&$f g');</code>
Output:
abcdef-g
Pengubahsuaian Tambahan:
Untuk mengelakkan berbilang tanda sempang daripada muncul berturut-turut, ganti baris terakhir fungsi bersih dengan:
<code class="php">return preg_replace('/-+/', '-', $string);</code>
Atas ialah kandungan terperinci Bagaimana untuk Menghapuskan Aksara Bukan Abjad Angka dan Menggantikan Ruang dengan Tanda Sempang Menggunakan Ungkapan Biasa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!