Match-objektas
Match-objektas yra objektas su
informacija apie atitikmenis su reguliariąja išraiška
eilutėje. Match-objektą galima gauti
taikant šiuos metodus: fullmatch,
match,
search.
Informaciją iš match-objekto galima išgauti naudojant pagrindinius metodus.
Pagrindiniai metodai, taikomi match-objektui
| Metodas | Paskirtis |
|---|---|
group |
Grąžina nulį grupę. |
groups |
Grąžina grupžių kortėžą. |
groupdict |
Grąžina pavadintų grupių žodyną. |
span |
Grąžina pirmąjį ir paskutinį indeksus vienos grupės kortėžo. |
start |
Grąžina pirmąjį vienos grupės kortėžo indeksą. |
end |
Grąžina paskutinį vienos grupės kortėžo indeksą. |
Pavyzdys . Match-objektas be metodo
Pritaikykime metodą match mūsų
eilutei:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Kodo vykdymo rezultatas:
<re.Match object; span=(0, 3), match='123'>
Pavyzdys . Metodas group
Dabar išveskime nulę grupę
iš Match objekto naudodami metodą group:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Kodo vykdymo rezultatas:
'123'
Pavyzdys . Metodas groups
Pritaikykime gautam objektui
metodą groups grupių kortėžų išvedimui:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Kodo vykdymo rezultatas:
('1', '2')
Pavyzdys . Metodas groupdict
Pavadintų grupių žodyno išvedimui
galima pritaikyti metodą groupdict:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Kodo vykdymo rezultatas:
{'test1': '1', 'test2': '2'}
Pavyzdys . Metodas span
Išveskime kortėžą iš pirmojo ir
paskutiniojo vieno kortėžo indeksų. Tam
naudosime metodą span:
res = re.match('\d+', txt)
print(res.span())
Vykdžius kodą pamatysite kortėžą, sudarytą iš dviejų indeksų. Tačiau atkreipkite dėmesį, kad paskutinė reikšmė yra vienetu didesnė už galutinį indeksą:
(0, 3)
Pavyzdys . Metodai start ir end
Norint grąžinti kiekvieną indeksą
atskirai, galima pritaikyti metodus start
ir end:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Kodo vykdymo rezultatas:
0
3