JavaScriptの正規表現におけるlastIndexプロパティ

正規表現オブジェクトには、 lastIndexというプロパティがあります。 これは、次にexecメソッドを呼び出したときに 検索を開始する位置を保持しています。 つまり、メソッドを呼び出すたびに、 このプロパティの値は変更されます。 例を見てみましょう:

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

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

lastIndexの利点は、 値を読み取るだけでなく、変更も可能で、 指定した位置から検索を開始できることです。 次の例を確認してください:

javascriptlet str = '12 34 56';

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

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

次の文字列が与えられています:

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

5文字目から始まるすべての時刻の部分文字列を 見つけてください。