Uchaguo ndani ya seti katika usanifu mara kwa mara PHP

Tayari unajua kuwa herufi maalum ndani ya [] hugeuka kuwa herufi za kawaida. Hata hivyo, kuna uchaguo: ikiwa unahitaji mabano mraba kama herufi, basi inabidi uzue kwa mshale wa nyuma.

Kwa mfano katika mfumo ujao wa utafutaji unaonekana hivi: kati ya x kuna mabano mraba:

php<?php
  $str = 'x]x xax x[x x1x';
  $res = preg_replace('#x[\[\]]x#', '!', $str);
?>

Matokeo yake kwenye kutofautisha kitaandikwa yafuatayo:

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

Imetolewa mfumo:

php<?php
  $str = 'x[]z x{}z x.z x()z';
?>

Andika usanifu mara kwa mara, utakayopata maneno yote kwa muundo: herufi 'x', kisha idadi yoyote ya mabano yoyote, kisha herufi 'z'.

Задание 2

Imetolewa mfumo:

php<?php
  $str = '[abc] {abc} abc (abc) [abc]';
?>

Andika usanifu mara kwa mara, utakayopata mifumo katika mabano yoyote na kubadilisha kwa '!'.