⊗pyPmREMFi 62 of 129 menu

A finditer metódus a Python reguláris kifejezéseiben

A finditer metódus arra szolgál, hogy iterátort kapjunk az összes reguláris kifejezéssel megegyező eredményről a sztringben. A metódus első paraméterében a keresendő reguláris kifejezést adjuk meg, a második paraméterben pedig a keresendő sztringet. A metódus balról jobbra haladva ellenőrzi az összes egyezést. A metódus egyezési objektumok iterátorát adja vissza. A finditer metódus szintaxisa a következő:

re.finditer(mit keresünk, hol keresünk)

Keressük meg az összes számjegyet tartalmazó részsztringet a sztringünkben:

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

A kód végrehajtásának eredménye:

<callable_iterator object at 0x000002AA891300A0>

Most deklaráljunk egy res nevű változót, aminek értéke az előző példában kapott objektum lesz. Ezután iteráljunk át rajta egy ciklussal:

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

A kód végrehajtása után két match-objektum jelenik meg:

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

Ezek az objektumok tuple formájában tartalmaznak információt az összes egyezésről a reguláris kifejezéssel. Az index alapján is kiírhatjuk belőlük az egyezéseket:

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

A kód végrehajtásának eredménye:

'123' '456'

Adott egy sztring:

txt = '12 aaa 34 bbb 56 ccc'

Írja ki belőle az összes számot egy ciklus segítségével.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás