Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Memisahkan Rentetan dalam JavaScript dan Mengekalkan Pembatas?

Bagaimanakah Saya Boleh Memisahkan Rentetan dalam JavaScript dan Mengekalkan Pembatas?

Patricia Arquette
Lepaskan: 2024-12-09 11:08:06
asal
834 orang telah melayarinya

How Can I Split a String in JavaScript and Keep the Delimiter?

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"
Salin selepas log masuk

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);
    Salin selepas log masuk

    Ungkapan ini menggunakan kurungan untuk menangkap pembatas, memastikan ia kekal dalam tatasusunan yang terhasil.

  • Pandangan Positif:

    string.split(/(?=</g);
    Salin selepas log masuk

    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);
    Salin selepas log masuk

    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);
Salin selepas log masuk

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);
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan