Właściwość lastIndex w wyrażeniach regularnych JavaScript

Wyrażenie regularne ma właściwość lastIndex. Zawiera ona pozycję, od której rozpocznie się wyszukiwanie następnego wywołania metody exec. To znaczy, że przy każdym nowym wywołaniu metody ta właściwość będzie zmieniać swoją wartość. Spójrzmy na przykład:

javascriptlet str = '12 34 56';
let reg = /\d+/g;
console.log(reg.lastIndex); // wartość początkowa 0

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

Zaletą lastIndex jest to, że można ją nie tylko odczytywać, ale i zmieniać, rozpoczynając wyszukiwanie od zadanej pozycji. Zobacz przykład:

javascriptlet str = '12 34 56';

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

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

Dany jest następujący ciąg znaków:

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

Znajdź w nim wszystkie podciągi z czasem, zaczynając od piątego znaku.