Método Python re.sub()

Python re 模块Módulo re de Python


re.sub()es Pythonreutilizado en el módulo parareemplazar coincidenciasla función.

Busca todas las subcadenas coincidentes en la cadena y las reemplaza con el contenido especificado.

Definición de la palabra: subEs la abreviatura de substitute (reemplazar).


Sintaxis básica y parámetros

Formato de sintaxis

re.sub(pattern, repl, string, count=0, flags=0)

Descripción de parámetros

  • patternExpresión regular a coincidir
  • replTexto de reemplazo, puede ser una cadena o una función
  • stringCadena original
  • countNúmero máximo de reemplazos, 0 significa reemplazar todos
  • flagsIndicadores de expresión regular

Descripción de la función

  • Valor de retornoDevuelve la nueva cadena después del reemplazo.

Ejemplo

Ejemplo 1: Reemplazo básico

Ejemplo

import re

text = "Python is good, Python is great"

# Reemplazar Python por Java
result = re.sub(r'Python', 'Java', text)

print(result)

Resultado esperado:

Java is good, Java is great

Ejemplo 2: Reemplazar un número específico de veces

Ejemplo

import re

text = "Python is good, Python is great"

# Reemplazar solo el primero
result = re.sub(r'Python', 'Java', text, count=1)

print(result)

Resultado esperado:

Java is good, Python is great

Ejemplo 3: Reemplazo usando expresiones regulares

Ejemplo

import re

text = Mi número de teléfono móvil es 138-1234-5678

# Reemplazar los 4 dígitos centrales del número de teléfono por ****
result = re.sub(r'\d{4}', '****', text)

print(result)

Resultado esperado:

我的手机号是 138-****-5678

Ejemplo 4: Uso de referencias a grupos

Ejemplo

import re

text = "2024-04-02"

# Intercambiar el orden de año, mes y día
result = re.sub(r'(\d{4})-(\d{2})-(\d{2})', r'\3/\2/\1', text)

print(result)

Resultado esperado:

02/04/2024

Ejemplo 5: Usar una función como contenido de reemplazo

Ejemplo

import re

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

# Reemplazar los números por número+1
def add_one(match):
    return str(int(match.group()) + 1)

result = re.sub(r'\d+', add_one, text)

print(result)

Resultado esperado:

苹果4个,香蕉6个,橙子9个

Python re 模块Módulo re de Python

Otras extensiones