Уласцівасць lastIndex у рэгулярках JavaScript
У рэгулярнага выраза ёсць уласцівасць
lastIndex. Яно змяшчае пазіцыю,
з якой будзе пачынаць пошук наступны
выклік метаду exec.
Гэта значыць пры кожным новым выкліку метаду
гэтая ўласцівасць будзе мяняць сваё значэнне.
Давайце паглядзім на прыкладзе:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // пачатковае значэнне 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
Перавагай lastIndex з'яўляецца тое,
што яго можна не толькі чытаць, але і
змяняць, пачынаючы пошук з зададзенай
пазіцыі. Глядзіце прыклад:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
Дадзена наступная радок:
let str = '12:37 15:48 17:59';
Знайдзіце ў ёй усе падрадкі з часам, пачынаючы з пятага сімвала.