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':

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

print(res)

Rezultat izvajanja kode:

python'xax xbx xcx !'

Primer

V tem primeru je vzorec iskanja takšen: črka 'x', nato NE mala latinična črka, nato črka 'z':

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

print(res)

Rezultat izvajanja kode:

python'xaz xbz ! !'

Praktične naloge

Задание 1

Napišite regularni izraz, ki bo našel nize po vzorcu: številka 1, nato znak ne 'e' in ne 'x', številka 2.

Задание 2

Napišite regularni izraz, ki bo našel nize po vzorcu: črka 'x', nato NE številka od 2 do 7, črka 'z'.

Задание 3

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'.

Задание 4

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'.