Elnevezett zsebek a PHP reguláris kifejezésén belül
Emlékezzünk vissza, hogyan használtuk a zsebeket maga a reguláris kifejezésben:
<?php
$res = preg_replace('#([a-z])\1#', '!', $str);
?>
Időnként előfordulnak olyan helyzetek, amikor kényelmesebb a zsebhez a nevével hivatkozni, és nem a számával. Ehhez nevet kell adnunk a zsebnek:
<?php
$res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>
Most már hivatkozhatunk erre a zsebre
a \k<name> szintaxis segítségével, így:
<?php
$res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>
Az leírt elnevezett zsebeknek még néhány
alternatív szintaxisuk van: (?P=name),
\k'name', \k{name}.
Adott egy sztring:
<?php
$str = '12:59:59 12:59:12 09:45:09';
?>
Keresse meg az összes olyan időt tartalmazó részsztringet, amelyben az óra megegyezik a másodpercekkel.