Խմբավորող փակագծերը PHP-ի ռեգուլյար արտահայտություններում
Նախորդ օրինակներում կրկնման օպերատորները գործում էին միայն մեկ նիշի վրա, որ կանգնած էր նրանցից առաջ: Ի՞նչ անել, եթե մենք ցանկանում ենք դրանք գործադրել մի քանի նիշի վրա:
Դրա համար գոյություն ունեն խմբավորող փակագծեր
'(' և ')': Նրանք աշխատում են այսպես.
եթե ինչ-որ բանի կանգնած է խմբավորող փակագծերում
և անմիջապես ')'-ից հետո կանգնած է կրկնման օպերատոր
- այն կգործի բոլոր նիշերի վրա, որոնք կանգնած են փակագծերի ներսում:
Հաջորդ օրինակում որոնման շաբլոնը նման է
այսին. տառ 'x', ապա տող 'ab'
մեկ կամ ավելի անգամ, ապա տառ 'x':
<?php
$str = 'xabx xababx xaabbx';
$res = preg_replace('#x(ab)+x#', '!', $str);
?>
Արդյունքում փոփոխականի մեջ կգրվի հետևյալը.
'! ! xaabbx'
Տրված է տող.
<?php
$str = 'ab abab abab abababab abea';
?>
Գրեք ռեգուլյար արտահայտություն, որը կգտնի տողեր
ըստ շաբլոնի. տող 'ab' կրկնվում է
1 կամ ավելի անգամ.