Nazwane grupy wewnątrz wyrażenia regularnego JavaScript

Przypomnijmy, jak używaliśmy grup w samym wyrażeniu regularnym:

javascriptlet res = str.replace(/([a-z])\1/g, '!');

Czasami zdarzają się sytuacje, gdy wygodniej jest odwoływać się do grupy nie po jej numerze, ale po nazwie. Aby to zrobić, musimy nadać grupie nazwę:

javascriptlet res = str.replace(/(?<letter>[a-z])/g, '!');

Teraz możemy odwołać się do tej grupy poprzez składnię \k<name>, w ten sposób:

javascriptlet res = str.replace(/(?<letter>[a-z])\k<letter>/g, '!');
Задание 1

Dany jest ciąg znaków:

javascriptlet str = '12:59:59 12:59:12 09:45:09';

Znajdź wszystkie podciągi z czasem, w których godzina pokrywa się z sekundami.