Závorky pro skupiny v regulárních výrazech Pythonu
V předchozích příkladech operátory opakování působily pouze na jeden znak, který stál před nimi. Co dělat, pokud potřebujete, aby působily na několik znaků?
K tomu existují závorky pro skupiny
'(' a . Fungují takto:
pokud je něco v závorkách pro skupiny
a hned za ')'')' je operátor
opakování - bude působit na vše, co
je uvnitř závorek.
V následujícím příkladu vypadá vyhledávací vzor
takto: písmeno 'x', dále řetězec
'ab' jednou nebo vícekrát, poté písmeno
'x':
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
Výsledek provedení kodu:
'! ! xaabbx'
Je dán řetězec:
txt = 'ab abab abab abababab abea'
Napište regulární výraz, který najde řetězce
podle vzoru: řetězec 'ab' se opakuje
1 nebo vícekrát.