Extraer o encontrar todos los números de una cadena RegEx Python
Para obtener la lista de todos los números de una cadena, utilice la expresión regular '[0-9]+'
con el método re.findall()
. [0-9] representa una expresión regular que coincide con un solo dígito en la cadena. [0-9]+ representa secuencias de dígitos continuas de cualquier longitud.
num = re.findall('[0-9]+', cadena)
donde cadena
es la cadena en la que necesitamos encontrar los números. re.findall()
devuelve la lista de cadenas que coinciden con la expresión regular.
Ejemplo 1: Obtener la lista de todos los números de una cadena
En el siguiente ejemplo, tomaremos una cadena, Vivimos en el 9-162 de Malibeu. Mi número de teléfono es 666688888.
, y encontraremos todos los números, ['9', '162', '666688888']
, presentes en la cadena
import re
str = 'Vivimos en el 9-162 de Malibeu. Mi número de teléfono es 666688888.'
#búsqueda con regex
x = re.findall('[0-9]+', str)
print(x)
Salida:
['9', '162', '666688888']
Ejemplo 2: Obtener la lista de todos los dígitos continuos de una Cadena
En el siguiente ejemplo, tomaremos una cadena, Nosotros cuatro chicos, vivimos en la calle 2 de Malibeu. Yo tenía un efectivo de 248 dólares en mi bolsillo. Tengo un billete con número de serie 88796451-52.
, y encontrar todos los números, ['2', '248', '88796451', '52']
, presentes en la cadena.
import re
str = 'Nosotros cuatro chicos, vivimos en la calle 2 de Malibeu. Yo tenía un efectivo de 248 dólares en mi bolsillo. Tengo un billete con número de serie 88796451-52.'
#búsqueda con regex
x = re.findall('[0-9]+', str)
print(x)
Salida:
['2', '248', '88796451', '52']
En este tutorial de Ejemplos de Python, aprendimos a obtener todos los números de una cadena como una lista, utilizando Expresiones Regulares de Python, con la ayuda de programas de ejemplo.