105 of 151 menu

Obiectul Match

Obiectul Match reprezintă un obiect cu informații despre potrivirile cu expresia regulată într-un șir. Obiectul Match poate fi obținut, aplicând următoarele metode: fullmatch, match, search.

Extragerea informațiilor din obiectul match se poate face cu ajutorul metodelor principale.

Metode principale aplicate obiectului match

Metodă Scop
group Returnează grupul zero.
groups Returnează un tuplu cu grupurile.
groupdict Returnează un dicționar cu grupurile denumite.
span Returnează primul și ultimul index al tuplului pentru un grup.
start Returnează primul index al tuplului pentru un grup.
end Returnează ultimul index al tuplului pentru un grup.

Exemplu . Obiectul Match fără metodă

Să aplicăm metoda match șirului nostru:

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

Rezultatul executării codului:

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

Exemplu . Metoda group

Acum să afișăm grupul zero din obiectul Match folosind metoda group:

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

Rezultatul executării codului:

'123'

Exemplu . Metoda groups

Să aplicăm obiectului obținut metoda groups pentru a afișa tuplurile grupurilor:

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

Rezultatul executării codului:

('1', '2')

Exemplu . Metoda groupdict

Pentru a afișa dicționarul grupurilor denumite se poate aplica metoda groupdict:

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

Rezultatul executării codului:

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

Exemplu . Metoda span

Să afișăm tuplul cu primul și ultimul index ai unui tuplu. Pentru asta vom folosi metoda span:

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

După executarea codului veți vedea un tuplu, format din doi indecși. Dar rețineți că ultima valoare este cu unu mai mare decât indexul final:

(0, 3)

Exemplu . Metodele start și end

Pentru a returna fiecare dintre indecși separat, se pot aplica metodele start și end:

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

Rezultatul executării codului:

0 3

Vedeți și

  • metoda match a modulului re,
    care caută potrivirea cu regex la începutul șirului
  • metoda fullmatch a modulului re,
    care caută toate potrivirile cu regex în șir
  • metoda search a modulului re,
    care caută prima potrivire cu regex în șir
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge