Номгузоришуда кармани дар регуляри 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';
?>
Ҳама зерсатрҳоро бо вақт ёбед, ки дар онҳо соат бо сонияҳо мувофиқат мекунад.