Оғоз ва поёни сатр дар регулярҳои PHP
Аломатҳои махсус мавҷуданд, ки оғози
сатрро ^ ё поёни сатрро $ нишон медиҳанд.
Биёед коркарди онҳоро дар мисолҳо бубинем.
Мисол
Дар ин мисол шаблони ҷустуҷӯ ин аст: иваз кардани
'aaa' ба '!' танҳо дар сурате, ки он
дар оғози сатр истода бошад:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#^aaa#', '!', $str);
?>
Дар натиҷа ба тағирёбандаи зерин сабт мешавад:
'! aaa aaa'
Мисол
Дар ин мисол шаблони ҷустуҷӯ ин аст: иваз кардани
'aaa' ба '!' танҳо дар сурате, ки он
дар поёни сатр истода бошад:
<?php
$str = 'aaa aaa aaa';
$res = preg_replace('#aaa$#', '!', $str);
?>
Дар натиҷа ба тағирёбандаи зерин сабт мешавад:
'aaa aaa !'
Мисол
Вақте ки дар оғози регулярка ^ истода бошад,
ва дар поён - $, пас ин тавр мо
тамоми сатрро ба таври ҷамъӣ барои мувофиқат ба
регулярка тафтиш мекунем.
Дар мисоли оянда шаблони ҷустуҷӯ ин аст:
ҳарфи 'a' як ё зиёда маротиба такрор мешавад, тамоми сатрро ба '!'
иваз кунед, танҳо дар сурате ки аз ҳарфҳои якхелаи 'a' иборат бошад.
<?php
$str = 'aaa';
$res = preg_replace('#^a+$#', '!', $str);
?>
Дар натиҷа ба тағирёбандаи зерин сабт мешавад:
'!'
Масъалаҳои амалӣ
Сатр дода шудааст:
<?php
$str = 'abc def xyz';
?>
Регуляркаеро нависед, ки зерсатри аввалинро аз ҳарфҳо пайдо кунад.
Сатр дода шудааст:
<?php
$str = 'abc def xyz';
?>
Регуляркаеро нависед, ки зерсатри охиринро аз ҳарфҳо пайдо кунад.
Сатр дода шудааст:
<?php
$str = '$aaa$ $bbb$ $ccc';
?>
Регуляркаеро нависед, ки зерсатри охиринро аз ҳарфҳо, ки бо аломатҳои доллар иҳота шудаанд, пайдо кунад.