Grupeerivad sulud Pythoni regulaaravaldistes
Eelmistes näidetes mõjusid kordusoperaatorid ainult ühele sümbolile, mis seisis nende ees. Mida teha, kui on vaja, et need mõjuksid mitmele sümbolile?
Selleks on olemas grupeerivad sulud
'(' ja . Need töötavad nii:
kui midagi on grupeerivates sulgudes
ja kohe pärast ')'')' on kordusoperaator
- mõjub see kõigele, mis
on sulgude sees.
Järgmises näites on otsimismustrit kujutatud
nii: täht 'x', seejärel string
'ab' üks või mitu korda, siis täht
'x':
txt = 'xabx xababx xaabbx'
res = re.sub('x(ab)+x', '!', txt)
print(res)
Koodi täitmise tulemus:
'! ! xaabbx'
Antud string:
txt = 'ab abab abab abababab abea'
Kirjutage regulaaravaldis, mis leiab stringid
vastavalt mustrile: string 'ab' kordub
1 või enam korda.