Posebni znaki znotraj oglatih oklepajev v Python

Posebni znaki znotraj [ ] postanejo navadni znaki. To pomeni, da jih ni potrebno escapovati z backslashom.

Primer

V tem primeru je vzorec iskanja takšen: med x-ema katera koli črka 'a', 'b', 'c', ali pika:

pythontxt = 'xax xbx xcx xdx x.x x@x'
res = re.sub('x[abc.]x', '!', txt)

print(res)

Rezultat izvajanja kode:

python'! ! ! xdx ! x@x'

Primer

V tem primeru je vzorec iskanja takšen: med x-ema katera koli mala latinična črka ali pika:

pythontxt = 'xax xbx xcx x@x'
res = re.sub('x[a-z.]x', '!', txt)

print(res)

Rezultat izvajanja kode:

python'! ! ! x@x'

Praktične naloge

Задание 1

Podan niz:

pythontxt = 'aba aea aca aza axa a.a a+a a*a'

Napišite regularni izraz, ki bo našel nize 'a.a', 'a+a', 'a*a', brez da bi prizadel ostale.

Задание 2

Podan niz:

pythontxt = 'xaz x.z x3z x@z x$z xrz'

Napišite regularni izraz, ki bo našel nize po vzorcu: črka 'x', nato NE pika, NE afna, in NE dolar, nato pa črka 'z'.