Inverzija nizov znakov v regularnih izrazih
Z znakom strešice '^' na začetku
oglatih oklepajev lahko invertirate
želeno. Če na primer ukaz [ab]
išče črko 'a' ali 'b', potem
bo ukaz [^ab] iskal vse
znake, razen 'a' in 'b'.
Primer
V tem primeru je vzorec iskanja
takšen: črka 'x', nato NE črka
'a', ne 'b' in ne 'c',
nato črka 'z':
txt = 'xaz xbz xcz xez'
res = re.sub('x[^abc]z', '!', txt)
print(res)
Rezultat izvajanja kode:
'xax xbx xcx !'
Primer
V tem primeru je vzorec iskanja
takšen: črka 'x', nato NE mala
latinična črka, nato črka 'z':
txt = 'xaz xbz x1z xCz'
res = re.sub('x[^a-z]z', '!', txt)
print(res)
Rezultat izvajanja kode:
'xaz xbz ! !'
Praktične naloge
Napišite regularni izraz, ki bo našel nize
po vzorcu: številka 1, nato znak
ne 'e' in ne 'x', številka
2.
Napišite regularni izraz, ki bo našel nize
po vzorcu: črka 'x', nato NE
številka od 2 do 7, črka
'z'.
Napišite regularni izraz, ki bo našel nize
po vzorcu: črka 'x', nato NE
velika latinična črka od 1 in več
krat, črka 'z'.
Napišite regularni izraz, ki bo našel nize
po vzorcu: črka 'x', nato NE
velika ali mala latinična črka in
ne številka od 1 do 5 od 1
in več krat, črka 'z'.