Match-объект
Match-объект - бул регулярдуу туюнтма
менен саптагы дал келүүлөр жөнүндө маалымат камтылган объект. Match-объектти төмөнкү методдорду колдонуп алууга болот: fullmatch,
match,
search.
Match-объекттен маалымат алуу үчүн негизги методдорду колдонсо болот.
Match-объектке колдонулуучу негизги методдор
| Метод | Мақсаты |
|---|---|
group |
Нөлдүнчү карманды кайтарат. |
groups |
Кармандардан турган кортежди кайтарат. |
groupdict |
Аталыштуу кармандардан турган сөздүктү кайтарат. |
span |
Бир кармандан турган кортеждин биринчи жана акыркы индекстерин кайтарат. |
start |
Бир кармандан турган кортеждин биринчи индексин кайтарат. |
end |
Бир кармандан турган кортеждин акыркы индексин кайтарат. |
Мисал . Методсуз Match-объект
Келгиле, биздин сапка match методун колдонолу:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Кодду иштетүүнүн натыйжасы:
<re.Match object; span=(0, 3), match='123'>
Мисал . Group методу
Эми group методу менен Match object'тен нөлдүнчү карманды чыгаралы:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Кодду иштетүүнүн натыйжасы:
'123'
Мисал . Groups методу
Келгиле, алынган объектке кармандардын кортежин чыгаруу үчүн groups методун колдонолу:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Кодду иштетүүнүн натыйжасы:
('1', '2')
Мисал . Groupdict методу
Аталыштуу кармандардын сөздүгүн чыгаруу үчүн groupdict методун колдонсо болот:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Кодду иштетүүнүн натыйжасы:
{'test1': '1', 'test2': '2'}
Мисал . Span методу
Келгиле, бир кортеждин биринчи жана акыркы индекстеринин кортежин чыгаралы. Бул үчүн биз span методун колдонобуз:
res = re.match('\d+', txt)
print(res.span())
Кодду иштеткенден кийин эки индекстен турган кортежди көрөсүз. Бирок акыркы маани акыркы индекстен бирге чоң экенин эске алыңыз:
(0, 3)
Мисал . Start жана end методдору
Ар бир индексти өзүнчө кайтаруу үчүн start жана end методдорун колдонсо болот:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Кодду иштетүүнүн натыйжасы:
0
3