Paranteze de grupare în expresiile regulate Python
În exemplele anterioare operatorii de repetare acționau doar asupra unui singur caracter care se afla înaintea lor. Ce să faci dacă trebuie să acționezi cu ei asupra mai multor caractere?
Pentru aceasta există parantezele de grupare
'(' și . Ele funcționează astfel:
dacă ceva se află în parantezele de grupare
și imediat după ')'')' se află un operator
de repetare - acesta va acționa asupra a tot ce
se află în interiorul parantezelor.
În următorul exemplu, șablonul de căutare arată
astfel: litera 'x', apoi șirul
'ab' de una sau mai multe ori, apoi litera
'x':
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
Rezultatul executării codului:
'! ! xaabbx'
Este dat șirul:
txt = 'ab abab abab abababab abea'
Scrieți o expresie regulată care va găsi șirurile
după șablonul: șirul 'ab' se repetă
1 sau de mai multe ori.