Invertovanje skupova karaktera u regex-u

Pomoću znaka kapice '^' na početku četvornih zagrada možete invertovati željeno. Ako, na primer, komanda [ab] traži slovo 'a' ili 'b', onda će komanda [^ab] tražiti sve karaktere, osim 'a' i 'b'.

Primer

U ovom primeru šablon za pretragu izgleda ovako: slovo 'x', zatim NE slovo 'a', ne 'b' i ne 'c', pa slovo 'z':

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

print(res)

Rezultat izvršavanja koda:

python'xax xbx xcx !'

Primer

U ovom primeru šablon za pretragu izgleda ovako: slovo 'x', zatim NE malo latinično slovo, pa slovo 'z':

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

print(res)

Rezultat izvršavanja koda:

python'xaz xbz ! !'

Praktični zadaci

Задание 1

Napišite regularni izraz koji će pronaći stringove po šablonu: cifra 1, zatim karakter ne 'e' i ne 'x', cifra 2.

Задание 2

Napišite regularni izraz koji će pronaći stringove po šablonu: slovo 'x', zatim NE cifra od 2 do 7, slovo 'z'.

Задание 3

Napišite regularni izraz koji će pronaći stringove po šablonu: slovo 'x', zatim NE veliko latinično slovo od 1 i više puta, slovo 'z'.

Задание 4

Napišite regularni izraz koji će pronaći stringove po šablonu: slovo 'x', zatim NE veliko ili malo latinično slovo i ne cifra od 1 do 5 od 1 i više puta, slovo 'z'.