Регулярдык туюнтмалардагы топторду инверттөө

Төрт бурчтуу кашаанын башындагы 'шляпка' '^' жардамы менен каалаган нерсени инверттөөгө болот. Мисалы, эгерде [ab] буйругу 'a' же 'b' тамгасын издесе, анда [^ab] буйругу 'a' жана 'b'дан башка бардык белгилерди издешет.

Мисал

Бул мисалда издеү үлгүсү төмөнкүдөй көрүнөт: 'x' тамгасы, андан кийин 'a' тамгасы ЭМЕС, 'b' ЭМЕС жана 'c' ЭМЕС, андан кийин 'z' тамгасы:

pythontxt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)

print(res)

Кодду иштетүүнүн натыйжасы:

python'xax xbx xcx !'

Мисал

Бул мисалда издеү үлгүсү төмөнкүдөй көрүнөт: 'x' тамгасы, андан кийин кичине латын тамгасы ЭМЕС, андан кийин 'z' тамгасы:

pythontxt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)

print(res)

Кодду иштетүүнүн натыйжасы:

python'xaz xbz ! !'

Практикалык тапшырмалар

Задание 1

Төмөнкү үлгү боюнча саптарды таба турган регулярдык туюнтма жазыңыз: 1 саны, андан кийин 'e' жана 'x' ЭМЕС белгиси, 2 саны.

Задание 2

Төмөнкү үлгү боюнча саптарды таба турган регулярдык туюнтма жазыңыз: 'x' тамгасы, андан кийин 2дон 7го чейинки сан ЭМЕС, 'z' тамгасы.

Задание 3

Төмөнкү үлгү боюнча саптарды таба турган регулярдык туюнтма жазыңыз: 'x' тамгасы, андан кийин чоң латын тамгасы ЭМЕС (1 же андан көп жолу), 'z' тамгасы.

Задание 4

Төмөнкү үлгү боюнча саптарды таба турган регулярдык туюнтма жазыңыз: 'x' тамгасы, андан кийин чоң же кичине латын тамгасы ЭМЕС жана 1дон 5го чейинки сан ЭМЕС (1 же андан көп жолу), 'z' тамгасы.