Parentesi raggruppatrici nelle espressioni regolari di Python
Negli esempi precedenti, gli operatori di ripetizione agivano solo su un carattere che li precedeva. Cosa fare se è necessario applicarli a più caratteri?
Per questo esistono le parentesi raggruppatrici
'(' e . Funzionano così:
se qualcosa è racchiuso tra parentesi raggruppatrici
e subito dopo ')'')' c'è un operatore
di ripetizione - esso agirà su tutto ciò che
si trova all'interno delle parentesi.
Nel seguente esempio, il modello di ricerca è
il seguente: lettera 'x', poi la stringa
'ab' una o più volte, poi la lettera
'x':
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
Risultato dell'esecuzione del codice:
'! ! xaabbx'
Data la stringa:
txt = 'ab abab abab abababab abea'
Scrivi un'espressione regolare che trovi le stringhe
secondo il modello: stringa 'ab' ripetuta
1 o più volte.