⊗pyPmREMFi 62 of 129 menu

Методът finditer в регулярните изрази на Python

Методът finditer е предназначен за получаване на итератор на всички съвпадения с регулярния израз в низ. В първия параметър на метода посочваме регулярния израз, който ще търсим, във втория параметър - низът, в който търсим. Методът проверява всички съвпадения, търсейки ги отляво надясно. Методът връща итератор от съвпадащи обекти. Синтаксисът на метода finditer изглежда така:

re.finditer(какво да търси, къде да търси)

Нека намерим всички поднизове с цифри в нашия низ:

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

Резултат от изпълнението на кода:

<callable_iterator object at 0x000002AA891300A0>

А сега нека декларираме променлива res, чиято стойност ще бъде обектът, получен от нас в предишния пример. След това ще го обходим с цикъл:

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

След изпълнение на кода ще се изведат два match-обекта:

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

Тези обекти съдържат информация за всички съвпадения с регулярния израз под формата на кортеж. Може да се изведат съвпаденията от тях по индекс:

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

Резултат от изпълнението на кода:

'123' '456'

Даден е низ:

txt = '12 aaa 34 bbb 56 ccc'

Изведете от него всички числа с помощта на цикъл.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне