Parantezele de grupare în expresiile regulate JavaScript

Î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 aceasta există parantezele de grupare '(' și ')'. Ele funcționează astfel: dacă ceva se află în 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.

Să vedem câteva exemple.

Exemplu

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

javascriptlet str = 'xabx xababx xaabbx'
let res = str.replace(/x(ab)+x/g, '!');

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

javascript'! ! xaabbx'

Probleme practice

Задание 1

Este dat șirul:

javascriptlet str = 'ab abab abab abababab abea';

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