Match-obyekti
Match-obyekti
requlyar ifade
ile setirdeki uygunluqlar haqqinda melumat olan bir obyekti temsil edir. Match-obyekti asagidaki metodlar tetbiq edilmekle elde edile biler: fullmatch,
match,
search.
Match-obyektinden melumat cixartmaq ucun esas metodlardan istifade etmek olar.
Match-obyektine tetbiq edilen esas metodlar
| Metod | Teyinati |
|---|---|
group |
Sifir qebini qaytarir. |
groups |
Qeblerden ibaret kortej qaytarir. |
groupdict |
Adlandirilmis qeblerden ibaret luget qaytarir. |
span |
Bir qebin kortejinin birinci ve sonuncu indekslerini qaytarir. |
start |
Bir qebin kortejinin birinci indeksini qaytarir. |
end |
Bir qebin kortejinin sonuncu indeksini qaytarir. |
Numune . Metodsuz Match-obyekti
Gelin match metodunu bizim setirimize tetbiq edek:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Kodu icra etmek neticesi:
<re.Match object; span=(0, 3), match='123'>
Numune . group metodu
Indi ise Match obyektinden sifir qebi
group metodu ile cixartaq:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Kodu icra etmek neticesi:
'123'
Numune . groups metodu
Gelin elde edilen obyekte qeblerin kortejlerini
cixartmaq ucun groups metodunu tetbiq edek:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Kodu icra etmek neticesi:
('1', '2')
Numune . groupdict metodu
Adlandirilmis qeblerin lugetini cixartmaq ucun
groupdict metodunu tetbiq etmek olar:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Kodu icra etmek neticesi:
{'test1': '1', 'test2': '2'}
Numune . span metodu
Gelin bir kortejin birinci ve sonuncu
indekslerinden ibaret korteji cixartaq. Bunun
ucun biz span metodundan istifade edeceyik:
res = re.match('\d+', txt)
print(res.span())
Kodu icra etdikden sonra iki indeksden ibaret bir kortej goreceksiniz. Lakin eyni zamanda qeyd edin ki, sonuncu qiymet son indeksden bir vahid boyukdur:
(0, 3)
Numune . start ve end metodlari
Her bir indeksi ayri-ayri qaytarmaq ucun
start ve end metodlarini tetbiq etmek olar:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Kodu icra etmek neticesi:
0
3