Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Memisahkan Rentetan dalam JavaScript dan Mengekalkan Pembatas?
Memisahkan Rentetan dalam JavaScript Semasa Memelihara Pembatas
Apabila cuba membelah rentetan menggunakan pembatas dalam JavaScript menggunakan kaedah split(), ia adalah biasa kehilangan pembatas dalam tatasusunan yang terhasil. Untuk menangani perkara ini, pertimbangkan penyelesaian berikut:
Sebagai contoh, diberikan rentetan:
var string = "aaaaaa<br /><br />bbbb<br /><br />cccc"
Kami ingin membahagi rentetan ini menggunakan pembatas
diikuti dengan watak istimewa. Menggunakan ungkapan /
?[a-zA-Z0-9] ;/g mungkin tidak mengekalkan pembatas.
Untuk mengekalkan pembatas, pertimbangkan untuk menggunakan variasi berikut:
Merakam Pembatas:
string.split(/(<br \/>)/g);
Ungkapan ini menggunakan kurungan untuk menangkap pembatas, memastikan ia kekal dalam tatasusunan yang terhasil.
Pandangan Positif:
string.split(/(?=</g);
Ungkapan ini memisahkan rentetan pada setiap kedudukan di mana pembatas berada di sebelah kanan, tetapi tidak menangkap pembatas itu sendiri.
Pandangan Negatif:
string.split(/(?!</g);
Ungkapan ini membelah rentetan pada setiap kedudukan di mana pembatas tidak berada di sebelah kanan, mengekalkan pembatas dalam yang terhasil tatasusunan.
Sebagai alternatif, untuk pendekatan yang lebih tersuai, anda boleh menggunakan ungkapan berikut:
string.split(/(.*?<br \/>)/g);
Ungkapan ini menangkap segala-galanya sehingga dan termasuk pembatas, mengalih keluar hanya watak istimewa.
Perhatikan bahawa ungkapan tertentu hanya boleh memisahkan aksara tunggal. Dalam kes sedemikian, alternatif seperti berikut boleh digunakan:
// Keep slashes after directories var str = 'Animation/rawr/javascript.js'; var tokens = str.match(/[^\/]+\/?|\//g);
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memisahkan Rentetan dalam JavaScript dan Mengekalkan Pembatas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!