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':
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
Rezultat izvršavanja koda:
'xax xbx xcx !'
Primer
U ovom primeru šablon za pretragu izgleda
ovako: slovo 'x', zatim NE malo
latinično slovo, pa slovo 'z':
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
Rezultat izvršavanja koda:
'xaz xbz ! !'
Praktični zadaci
Napišite regularni izraz koji će pronaći stringove
po šablonu: cifra 1, zatim karakter
ne 'e' i ne 'x', cifra
2.
Napišite regularni izraz koji će pronaći stringove
po šablonu: slovo 'x', zatim NE
cifra od 2 do 7, slovo
'z'.
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'.
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'.