⊗pyPmREInr 33 of 129 menu

Introduzione alle espressioni regolari in Python

Le espressioni regolari sono comandi per ricerche e sostituzioni complesse (o semplicemente ricerche). Permettono di fare cose molto interessanti, ma, sfortunatamente, sono piuttosto difficili da imparare.

Per iniziare a lavorare con le espressioni regolari in Python, dobbiamo importare il modulo speciale re:

import re

Il modulo re include metodi progettati per lavorare con le espressioni regolari. Un'espressione regolare è un insieme di comandi e consiste di due tipi di caratteri: quelli che rappresentano se stessi e i caratteri comando, chiamati caratteri speciali.

È meglio familiarizzare con le espressioni regolari partendo dall'esempio del metodo sub, che è utilizzato per le sostituzioni in una stringa. Il primo parametro del metodo accetta cosa sostituire, il secondo - con cosa sostituire. Nel terzo parametro specifichiamo la stringa in cui effettuare la sostituzione. Nel quarto parametro opzionale impostiamo il numero di sostituzioni. La sostituzione più semplice con questo metodo sarà così:

res = re.sub('a', '!', 'bab') print(res) # visualizzerà 'b!b'

Come avrai notato, nell'espressione regolare le lettere rappresentano se stesse. Lo stesso vale per le cifre. Sostituiamo la cifra 2 con !:

res = re.sub('2', '!', '12abc3') print(res) # visualizzerà '1!abc3'

Invece, il punto è un carattere speciale e rappresenta qualsiasi carattere. Nel prossimo esempio troviamo una sottostringa con questo modello: lettera 'x', poi qualsiasi carattere, poi di nuovo lettera 'x':

res = re.sub('x.x', '!', 'xax eee') print(res) # visualizzerà '! eee'

Data la stringa:

txt = 'ahb acb aeb aeeb adcb axeb'

Scrivi un'espressione regolare che trovi le stringhe 'ahb', 'acb', 'aeb' secondo il modello: lettera 'a', qualsiasi carattere, lettera 'b'.

Data la stringa:

txt = 'aba aca aea abba adca abea'

Scrivi un'espressione regolare che trovi le stringhe 'abba', 'adca', 'abea' secondo il modello: lettera 'a', 2 caratteri qualsiasi, lettera 'a'.

Data la stringa:

txt = 'aba aca aea abba adca abea'

Scrivi un'espressione regolare che trovi le stringhe 'abba' e 'abea', senza catturare 'adca'.

Italiano
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesia日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Utilizziamo i cookie per il funzionamento del sito, l'analisi e la personalizzazione. I dati vengono elaborati in conformità con la Politica sulla privacy.
accetta tutto personalizza rifiuta