Match-objekt

Match-objekt predstavuje objekt s informáciami o zhody s regulárnym výrazom v reťazci. Match-objekt je možné získať aplikovaním nasledujúcich metód: fullmatch, match, search.

Informácie z match-objektu je možné extrahovať pomocou základných metód.

Základné metódy aplikované na match-objekt

Metóda Účel
group Vráti nultú skupinu.
groups Vráti n-ticu skupín.
groupdict Vráti slovník pomenovaných skupín.
span Vráti prvý a posledný index n-tice z jednej skupiny.
start Vráti prvý index n-tice z jednej skupiny.
end Vráti posledný index n-tice z jednej skupiny.

Príklad . Match-objekt bez metódy

Aplikujme metódu match na náš reťazec:

pythontxt = '123 456 789'
res = re.match('\d+', txt)

print(res)

Výsledok vykonania kódu:

python<re.Match object; span=(0, 3), match='123'>

Príklad . Metóda group

A teraz vypíšme nultú skupinu z Match objektu metódou group:

pythontxt = '123 456 789'
res = re.match('\d+', txt)

print(res.group())

Výsledok vykonania kódu:

python'123'

Príklad . Metóda groups

Aplikujme na získaný objekt metódu groups pre výpis n-tíc skupín:

pythontxt = '123 456 789'
res = re.match('(\d)(\d)', txt)

print(res.groups())

Výsledok vykonania kódu:

python('1', '2')

Príklad . Metóda groupdict

Pre výpis slovníka pomenovaných skupín je možné aplikovať metódu groupdict:

pythonres = re.match('(?P<test1>\d)(?P<test2>\d)', txt)
print(res.groupdict())

Výsledok vykonania kódu:

python{'test1': '1', 'test2': '2'}

Príklad . Metóda span

Vypíšme n-ticu z prvého a posledného indexu jednej n-tice. Na toto použijeme metódu span:

pythonres = re.match('\d+', txt)
print(res.span())

Po vykonaní kódu uvidíte n-ticu, zloženú z dvoch indexov. Ale zároveň si všimnite, že posledná hodnota je o jednotku väčšia ako koncový index:

python(0, 3)

Príklad . Metódy start a end

Pre vrátenie každého z indexov samostatne, je možné aplikovať metódy start a end:

pythonres = re.match('\d+', txt)
print(res.start())
print(res.end())

Výsledok vykonania kódu:

python0
3

Pozrite tiež

  • metóda match modulu re,
    ktorá hľadá zhodu s regulárnym výrazom na začiatku reťazca
  • metóda fullmatch modulu re,
    ktorá hľadá všetky zhody s regulárnym výrazom v reťazci
  • metóda search modulu re,
    ktorá hľadá prvú zhodu s regulárnym výrazom v reťazci