⊗ppPmRgGB 225 of 447 menu

Paranteze de grupare în expresiile regulate PHP

În exemplele precedente, operatorii de repetare acționau doar asupra unui singur caracter care se afla înaintea lor. Ce facem dacă vrem să-i facem să acționeze asupra mai multor caractere?

Pentru asta există parantezele de grupare '(' și ')'. Ele funcționează astfel: dacă ceva se află între parantezele de grupare și imediat după ')' se află un operator de repetare - acesta va acționa asupra a tot ce se află în interiorul parantezelor.

În următorul exemplu, șablonul de căutare arată așa: litera 'x', apoi șirul 'ab' de unul sau mai multe ori, apoi litera 'x':

<?php $str = 'xabx xababx xaabbx'; $res = preg_replace('#x(ab)+x#', '!', $str); ?>

Ca rezultat, în variabilă se va scrie următoarele:

'! ! xaabbx'

Este dat șirul:

<?php $str = 'ab abab abab abababab abea'; ?>

Scrieți o expresie regulată care va găsi șirurile după șablonul: șirul 'ab' se repetă de 1 sau de mai multe ori.

azbybntruzc