Інвертаванне набораў сімвалаў у рэгулярках

З дапамогай шапачкі '^' у пачатку квадратных дужак можна інвертаваць жаданае. Калі, напрыклад, каманда [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'.