Kapi Python search metodā
Bieži vien, meklējot atbilstību, ir ērti sadalīt apakšvirkni tā sauktajos kapos. Tie ir veids, kā sadalīt atrasto atbilstību atsevišķās daļās. Lai tos izmantotu, daļu no regulārās izteiksmes iekļauj apaļās iekavās.
Izmēģināsim to praksē. Pieņemsim, ka mums ir šāda virkne:
txt = '123 456'
Sadalīsim skaitļu apakšvirknes pa kiem. Lai to izdarītu, uzrakstīsim šādu regulāro izteiksmi:
res = re.search('(\d+) (\d+)', txt)
Rezultātā mēs iegūsim match-objektu. Tā
elementā ar indeksu 1 atradīsies
pirmais capture group, elementā ar indeksu
2 - otrais capture group, bet elementā ar
indeksu 0 - visa atrastā atbilstība (tā
sauktais nulles capture group):
print(res[0]) # '123 456' - atrastais
print(res[1]) # '123' - 1. capture group
print(res[2]) # '456' - 2. capture group
Dota virkne, kas satur domēnu:
txt = 'sss domain.ru zzz'
Atrodiet šo domēnu un ievietojiet tā nosaukumu pirmajā capture group, bet domēna zonu - otrajā.
Dota virkne, kas satur datumu:
txt = '31.12.2025'
Ievietojiet dienu pirmajā capture group, mēnesi - otrajā, bet gadu - trešajā.