lastIndex-ominaisuus JavaScriptin säännöllisissä lausekkeissa

Säännöllisellä lausekkeella on ominaisuus lastIndex. Se sisältää position, josta seuraava exec-metodin kutsu aloittaa haun. Toisin sanoen jokaisen uuden metodikutsun yhteydessä tämä ominaisuus muuttaa arvoaan. Katsotaanpa esimerkkiä:

javascriptlet str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // alkuarvo 0

let res;
while (res = reg.exec(str)) {
  console.log(res); // [12], [34], [56]
  console.log(reg.lastIndex); // 2, 5, 8
}

lastIndex-ominaisuuden etuna on, että sitä voi paitsi lukea, myös muuttaa, aloittaen haun annetusta positionista. Katso esimerkki:

javascriptlet str = '12 34 56';

let reg = /\d+/g;
reg.lastIndex = 2;

let res = reg.exec(str)
console.log(res); // [34]
Задание 1

Annettuna on seuraava merkkijono:

javascriptlet str = '12:37 15:48 17:59';

Etsi siitä kaikki aikaa vastaavat osamerkkijonot aloittaen viidennestä merkkistä.