Match-objekt
Match-objektet representerar ett objekt med
information om träffar med reguljära uttryck
i en sträng. Match-objekt kan erhållas
genom att använda följande metoder: fullmatch,
match,
search.
Information kan extraheras från match-objektet med hjälp av grundläggande metoder.
Grundläggande metoder som tillämpas på match-objekt
| Metod | Syfte |
|---|---|
group |
Returnerar nollfickan. |
groups |
Returnerar en tupel med fickor. |
groupdict |
Returnerar en ordbok med namngivna fickor. |
span |
Returnerar första och sista indexen för en tupel från en ficka. |
start |
Returnerar första indexet för en tupel från en ficka. |
end |
Returnerar sista indexet för en tupel från en ficka. |
Exempel . Match-objekt utan metod
Låt oss tillämpa metoden match på vår
sträng:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res)
Resultat av kodkörning:
<re.Match object; span=(0, 3), match='123'>
Exempel . Metoden group
Låt oss nu skriva ut nollfickan
från Match-objektet med metoden group:
txt = '123 456 789'
res = re.match('\d+', txt)
print(res.group())
Resultat av kodkörning:
'123'
Exempel . Metoden groups
Låt oss tillämpa metoden groups
på det erhållna objektet för att skriva ut tupler
av fickor:
txt = '123 456 789'
res = re.match('(\d)(\d)', txt)
print(res.groups())
Resultat av kodkörning:
('1', '2')
Exempel . Metoden groupdict
För att skriva ut en ordbok med namngivna fickor
kan metoden groupdict användas:
res = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())
Resultat av kodkörning:
{'test1': '1', 'test2': '2'}
Exempel . Metoden span
Låt oss skriva ut en tupel med första och
sista indexen för en tupel. För
detta använder vi metoden span:
res = re.match('\d+', txt)
print(res.span())
Efter kodkörning ser du en tupel, bestående av två index. Men notera att det sista värdet är ett mer än slutindexet:
(0, 3)
Exempel . Metoderna start och end
För att returnera vart och ett av indexen
var för sig, kan metoderna start
och end användas:
res = re.match('\d+', txt)
print(res.start())
print(res.end())
Resultat av kodkörning:
0
3