La propriété lastIndex dans les expressions régulières JavaScript

Une expression régulière a une propriété lastIndex. Elle contient la position à laquelle commencera la recherche suivante par l'appel de la méthode exec. C'est-à-dire qu'à chaque nouvel appel de la méthode cette propriété changera de valeur. Regardons un exemple :

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

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

L'avantage de lastIndex est que on peut non seulement la lire, mais aussi la modifier, pour commencer la recherche à une position donnée. Voir l'exemple :

javascriptlet str = '12 34 56';

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

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

Soit la chaîne suivante :

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

Trouvez-y toutes les sous-chaînes avec l'heure, en commençant à partir du cinquième caractère.