Caratteri speciali all'interno delle parentesi quadre in Python

I caratteri speciali all'interno di [ ] diventano caratteri ordinari. Ciò significa che non è necessario farne l'escape con la barra rovesciata.

Esempio

In questo esempio il modello di ricerca è il seguente: tra le x qualsiasi lettera 'a', 'b', 'c', o punto:

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

print(res)

Risultato dell'esecuzione del codice:

python'! ! ! xdx ! x@x'

Esempio

In questo esempio il modello di ricerca è il seguente: tra le x qualsiasi lettera minuscola latina o punto:

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

print(res)

Risultato dell'esecuzione del codice:

python'! ! ! x@x'

Problemi pratici

Задание 1

Data la stringa:

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

Scrivi un'espressione regolare che trovi le stringhe 'a.a', 'a+a', 'a*a', senza toccare le altre.

Задание 2

Data la stringa:

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

Scrivi un'espressione regolare che trovi le stringhe secondo il modello: lettera 'x', poi NON punto, NON chiocciola, e NON dollaro, e poi lettera 'z'.