Špecifiká cyriliky v regulárnych výrazoch Python

Veľkou výhodou regulárnych výrazov v Pythone je, že cyrilické znaky patria do skupiny \w. Nahraďme všetky latinské a cyrilické písmená v nasledujúcom reťazci:

pythontxt = 'x232x 456 xax xтекстx'
res = re.sub('x[\w]*x', '!', txt)

print(res)

Výsledok vykonania kódu:

python'! 456 ! !'

Cyrilické písmená je tiež možné hľadať pomocou skupiny v hranatých zátvorkách: [а-я]. Ale s ňou je problém - nezahŕňa písmeno 'ё'. Pre jeho zahrnutie je potrebné pridať toto písmeno do skupiny:

pythonres = re.sub('x[а-яё]*x', '!', txt)
print(res)

Výsledok vykonania kódu:

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

Daný reťazec:

pythontxt = 'wйw wяw wёw wqw'

Napíšte regulárny výraz, ktorý nájde reťazce podľa vzoru: na okrajoch stoja písmená 'w', a medzi nimi - cyrilické písmeno.

Задание 2

Daný reťazec:

pythontxt = 'ааа ббб ёёё ззз ййй ААА БББ ЁЁЁ ЗЗЗ ЙЙЙ'

Napíšte regulárny výraz, ktorý nájde všetky slová podľa vzoru: ľubovoľné cyrilické písmeno ľubovoľný počet krát.