Групиращи скоби в регулярните изрази на 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 или повече пъти.