De eigenschap lastIndex in JavaScript reguliere expressies
Een reguliere expressie heeft de eigenschap
lastIndex. Het bevat de positie
van waaraf de volgende aanroep van de
methode exec zal beginnen met zoeken.
Dat betekent dat bij elke nieuwe aanroep van de methode
deze eigenschap zijn waarde zal wijzigen.
Laten we een voorbeeld bekijken:
let str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // beginwaarde 0
let res;
while (res = reg.exec(str)) {
console.log(res); // [12], [34], [56]
console.log(reg.lastIndex); // 2, 5, 8
}
Het voordeel van lastIndex is dat
je het niet alleen kunt lezen, maar ook
kunt wijzigen, om te beginnen met zoeken vanaf een opgegeven
positie. Zie het voorbeeld:
let str = '12 34 56';
let reg = /\d+/g;
reg.lastIndex = 2;
let res = reg.exec(str)
console.log(res); // [34]
Gegeven de volgende string:
let str = '12:37 15:48 17:59';
Vind er alle substrings met tijd in, beginnend vanaf het vijfde teken.