Meletup Rentetan dengan Berbilang Pembatas dalam PHP
Meletup rentetan ke dalam tatasusunan ialah tugas biasa dalam PHP. Walau bagaimanapun, bagaimana jika anda perlu membahagikan rentetan berdasarkan berbilang pembatas?
Pertimbangkan contoh:
$example = 'Appel @ Ratte'; $example2 = 'apple vs ratte'
Anda mahu meletupkan rentetan ini sama ada pada '@' atau 'vs' ke dapatkan tatasusunan dengan nilai pecahan.
Satu penyelesaian ialah menggunakan fungsi rekursif seperti yang disediakan dalam soalan. Walau bagaimanapun, terdapat pendekatan yang lebih cekap menggunakan ungkapan biasa:
$output = preg_split('/ (@|vs) /', $input);
Ungkapan biasa ini akan memisahkan rentetan pada sebarang kejadian sama ada '@' atau 'vs', tidak kira sama ada terdapat ruang kosong di sekeliling pembatas . () mengehadkan corak pembatas dan | memisahkan dua pilihan.
Contohnya:
$output = preg_split('/ (@|vs) /', $example); // Result: ['Appel', 'Ratte'] $output = preg_split('/ (@|vs) /', $example2); // Result: ['apple', 'ratte']
Atas ialah kandungan terperinci Bagaimana untuk Memisahkan Rentetan dalam PHP dengan Berbilang Pembatas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!