⊗pyPmREMFi 62 of 129 menu

Metoda finditer v regulárních výrazech Python

Metoda finditer je určena pro získání iterátoru všech shod s regulárním výrazem v řetězci. V prvním parametru metody určíme regulární výraz, který budeme hledat, ve druhém parametru - řetězec, ve kterém hledáme. Metoda kontroluje všechny shody, hledá je zleva doprava. Metoda vrací iterátor objektů shody. Syntaxe metody finditer vypadá takto:

re.finditer(co hledat, kde hledat)

Pojďme najít všechny podřetězce s číslicemi v našem řetězci:

txt = 'aaaa 123 bbbb 456' print(re.finditer('\d+', txt))

Výsledek provedení kódu:

<callable_iterator object at 0x000002AA891300A0>

A nyní deklarujme proměnnou res, jejíž hodnotou bude objekt, který jsme obdrželi v předchozím příkladu. Poté jej projdeme cyklem:

txt = 'aaaa 123 bbbb 456' res = re.finditer('\d+', txt) for el in res: print(el)

Po provedení kódu se vypíší dva match-objekty:

<re.Match object; span=(5, 8), match='123'> <re.Match object; span=(14, 17), match='456'>

Tyto objekty obsahují informace o všech shodách s regulárním výrazem ve formě n-tice. Lze z nich vypsat shody podle indexu:

for el in res: print(el[0])

Výsledek provedení kódu:

'123' '456'

Daný řetězec:

txt = '12 aaa 34 bbb 56 ccc'

Vypište z něj všechna čísla pomocí cyklu.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout