Membuang Aksara Bukan Abjad Angka dan Menggantikan Ruang dengan Sempang
Apabila membina URL, tajuk yang mengandungi pelbagai aksara menjadi rentetan yang bersih perlu hanya terdiri daripada huruf dan nombor. Ini melibatkan mengalih keluar aksara khas dan menggantikan ruang dengan sempang.
Pelaksanaan Menggunakan Ungkapan Biasa
Ekspresi biasa (regex) menawarkan penyelesaian yang berkesan untuk tugas ini. Begini cara untuk mencapai hasil yang diingini:
Langkah 1: Gantikan Ruang dengan Tanda Sempang
$string = str_replace(' ', '-', $string);
Langkah 2: Alih Keluar Aksara Bukan Abjad
$string = preg_replace('/[^A-Za-z0-9\-]/', '', $string);
Ungkapan regex ini mengalih keluar sebarang aksara yang bukan huruf, nombor atau sempang.
Penggunaan:
echo clean('a|"bc!@£de^&$f g');
Output:
abcdef-g
Mencegah Berbilang Sempang Berturut-turut
Untuk memastikan berbilang sempang berturut-turut digantikan dengan satu sempang, gunakan langkah tambahan berikut:
$string = preg_replace('/-+/', '-', $string);
Langkah ini menggantikan semua kejadian dua atau lebih sempang berturut-turut dengan satu sempang.
Atas ialah kandungan terperinci Bagaimana untuk Menghapuskan Aksara Bukan Abjad Angka dan Menggantikan Ruang dengan Tanda Sempang dalam URL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!