Rumah > Artikel > hujung hadapan web > Mengapa JavaScript Regex Hanya Menangkap Kumpulan Terakhir dalam Ulangan?
Menangkap Berbilang Kumpulan dalam Ungkapan Biasa JavaScript
Apabila bekerja dengan ungkapan biasa dalam JavaScript, adalah perkara biasa untuk menghadapi situasi di mana anda perlu menangkap berbilang kumpulan data. Walau bagaimanapun, dalam beberapa kes, tingkah laku yang dijangkakan untuk menangkap semua kumpulan yang dipadankan mungkin tidak tercapai.
Sebagai contoh, pertimbangkan kod JavaScript berikut:
Anda mungkin menjangkakan kod itu akan kembali tatasusunan yang mengandungi semua padanan yang ditangkap:
Walau bagaimanapun, keputusan sebenar ialah:
Ini berlaku kerana dalam ungkapan biasa, apabila anda mengulangi kumpulan tangkapan, hanya tangkapan terakhir dikekalkan. Ini ialah gelagat lalai dalam kebanyakan perisa regex.
Penyelesaian untuk Menangkap Semua Padanan
Jika anda perlu menangkap semua kumpulan yang dipadankan, terdapat beberapa pilihan yang tersedia :
Contoh Menggunakan Exec Gelung
Contoh berikut menunjukkan pemadanan berbilang kumpulan menggunakan gelung eksec:
Sumber Tambahan
Atas ialah kandungan terperinci Mengapa JavaScript Regex Hanya Menangkap Kumpulan Terakhir dalam Ulangan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!