Poket Bernama Dalam Ungkapan Biasa PHP
Mari kita ingat semula bagaimana kami menggunakan poket dalam ungkapan biasa itu sendiri:
<?php
$res = preg_replace('#([a-z])\1#', '!', $str);
?>
Kadangkala terdapat situasi di mana lebih mudah untuk merujuk kepada poket bukan dengan nombornya, tetapi dengan namanya. Untuk ini, kita perlu memberikan nama kepada poket:
<?php
$res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>
Sekarang kita boleh merujuk kepada poket ini
melalui sintaks \k<name>, seperti ini:
<?php
$res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>
Poket bernama yang diterangkan mempunyai beberapa lagi
sintaks alternatif: (?P=name),
\k'name', \k{name}.
Diberikan rentetan:
<?php
$str = '12:59:59 12:59:12 09:45:09';
?>
Cari semua subrentetan dengan masa di mana jam sepadan dengan saat.