სიმბოლოების ნაკრების ინვერსია რეგულარულ გამონათქვამებში

კარეტის '^' გამოყენებით კვადრატული ფრჩხილების დასაწყისში შესაძლებელია სასურველის ინვერსია. თუ, მაგალითად, ბრძანება [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'.