Método Python re.findall()

Python re 模块Módulo re de Python


re.findall()es Pythonreutilizado en el módulo paraencontrar todas las coincidenciasla función.

Escanea toda la cadena y devuelve todas las subcadenas que coinciden con la expresión regular, en forma de lista.

Significado de la palabra: find allsignifica encontrar todos.


Sintaxis básica y parámetros

re.findall()es una función a nivel de módulo.

Formato de sintaxis

re.findall(pattern, string, flags=0)

Descripción de parámetros

  • pattern: patrón de expresión regular
  • string: la cadena a buscar
  • flags: opcional, banderas de expresión regular

Descripción de la función

  • Valor de retorno: Devuelve una lista con todas las cadenas coincidentes. Si no hay coincidencias, devuelve una lista vacía.
  • Características: Devuelve todas las coincidencias, no solo la primera.

Ejemplos

Ejemplo 1: Encontrar todos los números

Ejemplo

import re

text = "Tengo 3 manzanas, 5 naranjas, 8 plátanos"

# Encontrar todos los números
result = re.findall(r'\d+', text)

print("Números encontrados:", result)

Resultado esperado:

找到的数字: ['3', '5', '8']

Ejemplo 2: Encontrar todas las palabras

Ejemplo

import re

text = "Python is powerful, Python is easy"

# Encontrar todos los "Python"
result = re.findall(r'Python', text)

print("Python encontrados:", result)

Resultado esperado:

找到的Python: ['Python', 'Python']

Ejemplo 3: Usar grupos para extraer múltiples contenidos

Ejemplo

import re

text = "Correo: [email protected], Correo: [email protected]"

# Usar grupos para extraer nombre de usuario y dominio a la vez
result = re.findall(r'(\w+)@(\w+\.\w+)', text)

print("Correos encontrados:", result)

Resultado esperado:

找到的邮箱: [('test', 'example.com'), ('admin', 'test.org')]

Ejemplo 4: Encontrar todos los números de teléfono móvil

Ejemplo

import re

text = "Zhang San: 138-1234-5678, Li Si: 139-9876-5432, Wang Wu: 137-5555-8888"

# Encontrar todos los números de teléfono móvil
result = re.findall(r'\d{3}-\d{4}-\d{4}', text)

print("Todos los números de teléfono móvil:", result)

Resultado esperado:

所有手机号: ['138-1234-5678', '139-9876-5432', '137-5555-8888']

Python re 模块Módulo re de Python

Otras extensiones