Sifat lastIndex dalam Ungkapan Biasa JavaScript
Ungkapan biasa mempunyai sifat
lastIndex. Ia mengandungi kedudukan
dari mana carian untuk panggilan seterusnya
kaedah exec akan bermula.
Iaitu, dengan setiap panggilan baru kaedah
sifat ini akan mengubah nilainya.
Mari kita lihat contoh:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // nilai awal 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
Kelebihan lastIndex adalah
ia bukan sahaja boleh dibaca, tetapi juga
diubah, memulakan carian dari yang ditentukan
kedudukan. Lihat contoh:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
Diberi rentetan berikut:
let str = '12:37 15:48 17:59';
Cari semua subrentetan dengan masa di dalamnya, bermula dari aksara kelima.