PHP ичида номланган карманлар
Биз регуляр ифоданинг ўзида карманлардан қандай фойдаланганимизни эслаймиз:
<?php
$res = preg_replace('#([a-z])\1#', '!', $str);
?>
Баъзан вазиятлар бўладики, карманганга унинг рақами орқали эмас, балки номи орқали мурожаат қилиш қулайрок бўлади. Бунинг учун биз карманганга ном беришимиз керак:
<?php
$res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>
Энди биз бу карманганга \k<name> синтаксиси
орқали мурожаат қилишимиз мумкин, мана бу йўл билан:
<?php
$res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>
Тавсифланган номланган карманларда яна бир нечта
алтернатив синтаксислар мавжуд: (?P=name),
\k'name', \k{name}.
Берилган сатр:
<?php
$str = '12:59:59 12:59:12 09:45:09';
?>
Соат секундлар билан мос келадиган барча вақт остоналарини топинг.