Grupējošās iekavas Python regulārajās izteiksmēs
Iepriekšējos piemēros atkārtošanās operatori iedarbojās tikai uz vienu simbolu, kurš atradās tieši pirms tiem. Ko darīt, ja nepieciešams, lai tie iedarbotos uz vairākiem simboliem?
Šim nolūkam pastāv grupējošās iekavas
'(' un . Tās darbojas šādi:
ja kaut kas atrodas grupējošās iekavās
un uzreiz aiz ')'')' atrodas atkārtošanās
operators - tas iedarbosies uz visu, kas
atrodas iekavās.
Nākamajā piemērā meklēšanas šablons izskatās
šādi: burts 'x', pēc tam virkne
'ab' vienu vai vairāk reizes, tad burts
'x':
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
Koda izpildes rezultāts:
'! ! xaabbx'
Dota virkne:
txt = 'ab abab abab abababab abea'
Uzrakstiet regulāro izteiksmi, kas atradīs virknes
pēc šablona: virkne 'ab' atkārtojas
1 vai vairāk reizes.