Реттік өрнектердегі инверттеу

Шляпка '^' көмегімен шаршы жақшалардың басында қалаған нәрсені инверттеуге болады. Егер, мысалы, [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' әрпі.