Egenskaben lastIndex i JavaScript regulære udtryk
Et regulært udtryk har egenskaben
lastIndex. Den indeholder positionen,
hvorfra næste kald af metoden exec
vil starte søgningen.
Det betyder, at ved hvert nyt kald af metoden
vil denne egenskab ændre sin værdi.
Lad os se på et eksempel:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // startværdi 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
Fordelen ved lastIndex er,
at den ikke kun kan læses, men også
ændres, hvilket starter søgningen fra en given
position. Se eksempel:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
Givet følgende streng:
let str = '12:37 15:48 17:59';
Find alle understrenge med klokkeslæt i den, startende fra det femte tegn.