Tasche denominate all'interno delle espressioni regolari in PHP
Ricordiamo come abbiamo utilizzato le tasche nella stessa espressione regolare:
<?php
$res = preg_replace('#([a-z])\1#', '!', $str);
?>
A volte ci sono situazioni in cui è più conveniente fare riferimento a una tasca non per il suo numero, ma per il suo nome. Per fare questo dobbiamo dare un nome alla tasca:
<?php
$res = preg_replace('#(?<letter>[a-z])#', '!', $str);
?>
Ora possiamo fare riferimento a questa tasca
tramite la sintassi \k<name>, in questo modo:
<?php
$res = preg_replace('#(?<letter>[a-z])\k<letter>#', '!', $str);
?>
Le tasche denominate descritte hanno anche diverse
sintassi alternative: (?P=name),
\k'name', \k{name}.
Data una stringa:
<?php
$str = '12:59:59 12:59:12 09:45:09';
?>
Trova tutte le sottostringhe con l'orario in cui l'ora coincide con i secondi.