Kllapat grupuese në regex PHP
Në shembujt e mëparshëm operatorët e përsëritjes vepronin vetëm në një karakter, i cili qëndronte përpara tyre. Çfarë duhet bërë nëse duam që ata të veprojnë në disa karaktere?
Për këtë ekzistojnë kllapat grupuese
'(' dhe ')'. Ata punojnë kështu:
nëse diçka qëndron në kllapa grupuese
dhe menjëherë pas ')' qëndron një operator përsëritjeje
- ai do të veprojë në gjithçka që është brenda kllapave.
Në shembullin vijues modeli i kërkimit duket
kështu: shkronja 'x', pastaj vargu 'ab'
një herë ose më shumë, pastaj shkronja 'x':
<?php
$str = 'xabx xababx xaabbx';
$res = preg_replace('#x(ab)+x#', '!', $str);
?>
Si rezultat në variabël do të shkruhet si vijon:
'! ! xaabbx'
Jepet një varg:
<?php
$str = 'ab abab abab abababab abea';
?>
Shkruani një regex që do të gjejë vargjet
sipas modelit: vargu 'ab' përsëritet
1 herë ose më shumë.