Match-objekti
Match-objekti setirde regulýar ifadä
bilen gabat gelmeler hakynda maglumat saklaýan objekti görkezýär. Match-objekti aşakdaky usullary ulanyp, gazanyp bolýar: fullmatch,
match,
search.
Match-objektdän maglumat çykarmak üçin esasy usullary ulanmak bolar.
Match-objekde ulanylýan esasy usullary
| Usul | Maksady |
|---|---|
group |
Nol jyby goýujyny gaýtarýar. |
groups |
Jyby goýujylaryň köpçüligini gaýtarýar. |
groupdict |
At berilen jyby goýujylaryň sözlügini gaýtarýar. |
span |
Bir jyby goýujynyň birinji we soňky indeksleriniň köpçüligini gaýtarýar. |
start |
Bir jyby goýujynyň birinji indeksini gaýtarýar. |
end |
Bir jyby goýujynyň soňky indeksini gaýtarýar. |
Mysal . Usulsyz Match-objekti
Geliň, bizim setirimize match usulyny ulanyalyň:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Kodyň netijesi:
<re.Match object; span=(0, 3), match='123'>
Mysal . group usuly
Indi group usuly bilen Match objektiň nol jyby goýujysyny çykaryň:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Kodyň netijesi:
'123'
Mysal . groups usuly
Alynan objekde jyby goýujylaryň köpçüligini çykarmak üçin groups usulyny ulanyň:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Kodyň netijesi:
('1', '2')
Mysal . groupdict usuly
At berilen jyby goýujylaryň sözlügini çykarmak üçin groupdict usulyny ulanmak bolar:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Kodyň netijesi:
{'test1': '1', 'test2': '2'}
Mysal . span usuly
Bir köpçüligiň birinji we soňky indeksleriniň köpçüligini çykarmak üçin biz span usulyny ulanyarys:
res = re.match('\d+', txt)
print(res.span())
Kod ýerine ýetirilensoň, iki indeksden duran köpçüligi görersiňiz. Ýöne şuny ýadyňyzdan çykarmaň, soňky baha gutaranjy indeksden bir birlik uly:
(0, 3)
Mysal . start we end usullary
Indeksleriň her birini aýratyn gaýtarmak üçin start we end usullaryny ulanmak bolar:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Kodyň netijesi:
0
3