RegExp lastIndex xassəsi JavaScript-də
Regulyar ifadənin
lastIndex adlı xassəsi var.
Bu, növbəti exec metodunun çağırışının
axtarışa başlayacağı mövqeni ehtiva edir.
Yəni metodun hər yeni çağırışında
bu xassə öz dəyərini dəyişəcək.
Nümunəyə baxaq:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // ilkin dəyər 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
lastIndex-in üstünlüyü ondadır ki,
onu təkcə oxumaq olmaz, həm də
dəyişmək olar, axtarışı təyin olunmuş
mövqedən başlada bilərsiniz. Nümunəyə baxın:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
Aşağıdakı sətir verilib:
let str = '12:37 15:48 17:59';
Beşinci simvoldan başlayaraq, onda vaxt olan bütün alt sətirləri tapın.