Pomenované zachytávacie skupiny v regulárnom výraze PHP

Pripomeňme si, ako sme používali zachytávacie skupiny v samotnom regulárnom výraze:

php<?php
  $res = preg_replace('#([a-z])\1#', '!', $str);
?>

Niekedy nastanú situácie, keď je pohodlnejšie odkazovať sa na zachytávaciu skupinu nie podľa jej čísla, ale podľa mena. Pre to potrebujeme zachytávacej skupine dať meno:

php<?php
  $res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>

Teraz sa môžeme na túto zachytávaciu skupinu odkázať prostredníctvom syntaxe \k<name>, takto:

php<?php
  $res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>

Opísané pomenované zachytávacie skupiny majú ešte niekoľko alternatívnych syntaxí: (?P=name), \k'name', \k{name}.

Задание 1

Daný reťazec:

php<?php
  $str = '12:59:59 12:59:12 09:45:09';
?>

Nájdite všetky podreťazce s časom, v ktorých hodina zodpovedá sekundám.