Исключувања внатру множења во регуларните изрази на Python

Веќе знаете дека специјалните знаци внатру [] станат обични знаци. Сепак, постојат исклучоци: ако ви требаат квадратни загради како знаци внатру [ ] - тогаш тие треба да се ескапираат со обратна коса црта. За пример во следниот код шаблонот за пребарување изгледа вака: помеѓу икси стои квадратна заграда:

pythontxt = 'x]x xax x[x x1x'
res = re.sub('x[\[\]]x', '!', txt)

print(res)

Како резултат во променливата ќе се запише следново:

python'! xax ! x1x'
Задание 1

Дадена е низата:

pythontxt = 'x[]z x[[]]z x()z'

Напишете регуларен израз, кој ќе ги најде сите зборови според шаблонот: буква 'x', потоа квадратни загради било колку пати, потоа буква 'z'.

Задание 2

Дадена е низата:

pythontxt = 'x[]z x{}z x.z x()z x([])z'

Напишете регуларен израз, кој ќе ги најде сите зборови според шаблонот: буква 'x', потоа било колку пати било какви загради, потоа буква 'z'.