Properti lastIndex dalam RegExp JavaScript

Ekspresi reguler memiliki properti lastIndex. Properti ini berisi posisi di mana pencarian akan dimulai pada pemanggilan metode exec berikutnya. Artinya, pada setiap pemanggilan metode baru properti ini akan mengubah nilainya. Mari kita lihat contohnya:

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

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

Keuntungan dari lastIndex adalah bahwa properti ini tidak hanya dapat dibaca, tetapi juga diubah, memulai pencarian dari posisi yang ditentukan. Lihat contoh:

javascriptlet str = '12 34 56';

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

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

Diberikan string berikut:

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

Temukan semua substring dengan waktu di dalamnya, dimulai dari karakter kelima.