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:
txt = 'xax xbx xcx xdx x.x x@x'
res = re.sub('x[abc.]x', '!', txt)
print(res)
Risultato dell'esecuzione del codice:
'! ! ! xdx ! x@x'
Esempio
In questo esempio il modello di ricerca è il seguente: tra le x qualsiasi lettera minuscola latina o punto:
txt = 'xax xbx xcx x@x'
res = re.sub('x[a-z.]x', '!', txt)
print(res)
Risultato dell'esecuzione del codice:
'! ! ! x@x'
Problemi pratici
Data la stringa:
txt = '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.
Data la stringa:
txt = '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'.