Match-objekts
Match-objekts ir objekts ar
informāciju par atbilstībām regulārai izteiksmei
virknē. Match-objektu var iegūt,
izmantojot šādas metodes: fullmatch,
match,
search.
Informāciju no match-objekta var iegūt ar galveno metožu palīdzību.
Galvenās metodes, ko lieto match-objektam
| Metode | Mērķis |
|---|---|
group |
Atgriež nulles grupu. |
groups |
Atgriež grupu kortežu. |
groupdict |
Atgriež nosaukto grupu vārdnīcu. |
span |
Atgriež pirmo un pēdējo indeksu kortežā no vienas grupas. |
start |
Atgriež pirmo indeksu kortežā no vienas grupas. |
end |
Atgriež pēdējo indeksu kortežā no vienas grupas. |
Piemērs . Match-objekts bez metodes
Izmantosim metodi match uz mūsu
virknes:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Koda izpildes rezultāts:
<re.Match object; span=(0, 3), match='123'>
Piemērs . Metode group
Tagad izvadīsim nulles grupu
no Match objekta, izmantojot metodi group:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Koda izpildes rezultāts:
'123'
Piemērs . Metode groups
Izmantosim metodi groups uz iegūtā objekta,
lai izvadītu grupu kortežus:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Koda izpildes rezultāts:
('1', '2')
Piemērs . Metode groupdict
Lai izvadītu nosaukto grupu vārdnīcu,
var izmantot metodi groupdict:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Koda izpildes rezultāts:
{'test1': '1', 'test2': '2'}
Piemērs . Metode span
Izvadīsim kortežu no pirmā un
pēdējā indeksa viena korteža. Šim
nolūkam mēs izmantosim metodi span:
res = re.match('\d+', txt)
print(res.span())
Pēc koda izpildes jūs redzēsiet kortežu, kas sastāv no diviem indeksiem. Bet tajā pašā laikā ņemiet vērā, ka pēdējā vērtība ir par vienu lielāka par beigu indeksu:
(0, 3)
Piemērs . Metodes start un end
Lai atgrieztu katru no indeksiem
atsevišķi, var izmantot metodes start
un end:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Koda izpildes rezultāts:
0
3