ลักษณะพิเศษของตัวอักษรซีริลลิกใน regex ของ Python

ข้อได้เปรียบใหญ่ของ regex ใน Python คือสัญลักษณ์ตัวอักษรซีริลลิก อยู่ในกลุ่ม \w ลองมาแทนที่ ตัวอักษรละตินและซีริลลิกทั้งหมดใน สตริงต่อไปนี้:

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

print(res)

ผลลัพธ์การทำงานของโค้ด:

python'! 456 ! !'

นอกจากนี้ยังสามารถค้นหาตัวอักษรซีริลลิกได้ด้วย กลุ่มในวงเล็บเหลี่ยม: [а-я] แต่มีปัญหากับมัน - ตัวอักษร 'ё' จะไม่อยู่ในนี้ ในการรวมมันต้อง เติมตัวอักษรนี้เข้าไปในกลุ่ม:

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

ผลลัพธ์การทำงานของโค้ด:

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

กำหนดสตริง:

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

เขียน regex ที่จะค้นหาสตริง ตามรูปแบบ: ที่ขอบมีตัวอักษร 'w' และระหว่างพวกมันคือตัวอักษรซีริลลิก

Задание 2

กำหนดสตริง:

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

เขียน regex ที่จะค้นหาคำทั้งหมด ตามรูปแบบ: ตัวอักษรซีริลลิกใด ๆ จำนวนครั้งใด ๆ