Групиращи скоби в регулярните изрази на Python

В предишните примери операторите за повторение действаха само на един символ, който стоеше пред тях. Какво да правим, ако трябва да подействаме с тях на няколко символа?

За това съществуват групиращи скоби '(' и ')'. Те работят така: ако нещо стои в групиращи скоби и веднага след ')' стои оператор за повторение - той ще подейства на всичко, което стои вътре в скобите.

В следващия пример шаблонът за търсене изглежда така: буква 'x', следва низ 'ab' един или повече пъти, после буква 'x':

pythontxt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)

print(res)

Резултат от изпълнението на кода:

python'! ! xaabbx'
Задание 1

Даден е низ:

pythontxt = 'ab abab abab abababab abea'

Напишете регулярен израз, който ще намери низовете по шаблон: низ 'ab' се повтаря 1 или повече пъти.