დაჯგუფების ფრჩხილები 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 ან მეტჯერ.