101 of 151 menu

Método finditer del módulo re

El método finditer del módulo re devuelve un iterador de todas las coincidencias con la expresión regular en una cadena. En el primer parámetro del método especificamos la expresión regular. En el segundo parámetro establecemos la cadena en la que buscamos la expresión regular. En el tercer parámetro opcional se pueden establecer banderas. El método verifica todas las coincidencias, buscándolas de izquierda a derecha.

Sintaxis

import re re.finditer(expresión_regular, cadena, [banderas])

Ejemplo

Encontremos todas las subcadenas con dígitos en nuestra cadena:

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

Resultado de la ejecución del código:

<callable_iterator object at 0x000002AA891300A0>

Ejemplo

Y ahora declaremos la variable res, cuyo valor será el objeto obtenido por nosotros en el ejemplo anterior. Luego iteremos sobre él con un ciclo:

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

Después de ejecutar el código obtendremos dos objetos Match object:

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

Estos objetos contienen información sobre todas las coincidencias con la expresión regular en forma de tupla. Podemos extraer las coincidencias por índice:

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

Resultado de la ejecución del código:

'123' '456'

Ejemplo

Para mayor claridad, usemos grupos de captura al buscar coincidencias. Y al iterar sobre los objetos en el ciclo, mostremos la primera coincidencia (se considerará el grupo cero), así como sus elementos, a su vez distribuidos en grupos de captura:

txt = 'aaaa 123 bbbb 456' res = re.finditer('(\d)(\d)', txt) for el in res: print(el[0], el[1], el[2])

Después de ejecutar el código obtendremos el grupo cero, es decir, toda la subcadena, así como el primer y segundo carácter de esta subcadena:

'12' '1' '2' '45' '4' '5'

Véase también

  • método findall del módulo re,
    que devuelve una lista de todas las coincidencias en la cadena
  • método search del módulo re,
    que busca la primera coincidencia con la expresión regular en la cadena
  • método match del módulo re,
    que busca coincidencia con la expresión regular al inicio de la cadena
  • método fullmatch del módulo re,
    que busca todas las coincidencias con la expresión regular en la cadena
  • objeto Match object del módulo re,
    que contiene información sobre las coincidencias con la expresión regular
  • método split del módulo re,
    que divide una cadena en una lista según el separador especificado
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar