⊗pyPmREMl 50 of 129 menu

Multiriga nelle espressioni regolari di Python

Le espressioni regolari quando lavorano con stringhe multiriga hanno le loro peculiarità. Analizziamole attraverso l'esempio della seguente stringa, contenente caratteri ordinari, caratteri di nuova riga e tabulazioni:

txt = '''111 222 333 444'''

Nuova riga

I caratteri di nuova riga possono essere catturati usando il comando '\n':

res = re.sub('\n', '!', txt) print(res)

Il risultato sarà la seguente stringa (gli spazi tra le righe sono tabulazioni):

'111! 222! 333! 444'

Tabulazione

I caratteri di tabulazione possono essere catturati usando il comando '\t':

res = re.sub('\t', '!', txt) print(res)

Risultato dell'esecuzione del codice:

''' !111 !222 !333 !444 '''

Comportamento del punto

Il comando '.' per una stringa multiriga non cattura i caratteri di nuova riga:

res = re.sub('.', '!', txt) print(res)

Risultato dell'esecuzione del codice:

''' !!! !!!! !!!! !!!! '''

Qualsiasi carattere

Per catturare tutti i caratteri in una stringa multiriga, si usa un espediente intelligente sotto forma della combinazione [\s\S]. Questa costruzione troverà tutti i caratteri ordinari e tutti i ritorni a capo:

res = re.sub('[\s\S]', '!', txt) print(res)

Risultato dell'esecuzione del codice:

'!!!!!!!!!!!!!!!!!!'

Dollaro

Il comando ' in modalità multiriga catturerà la fine di ogni riga:

res = re.sub(' ', '!', txt) print(res)

Risultato dell'esecuzione del codice:

''' 111! 222! 333! 444! '''

Problemi pratici

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

''' abc! def! ghi! jkl! '''

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

''' ! abc ! def ! ghi ! jkl '''

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

'''! abc def ghi jkl !'''

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

'''! ! abc ! def ! ghi ! jkl !'''

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

'''! abc! def! ghi! jkl! !'''

Data la stringa:

''' abc def ghi jkl '''

Scrivi un'espressione regolare che trasformi questa stringa nella seguente:

''' !abc !def !ghi !jkl '''
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