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 მეთოდი
ახლა კი გამოვიტანოთ ნულოვანი ჯიბე
Match object-იდან group მეთოდის გამოყენებით:
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