Método Python re.escape()

Módulo Python re


re.escape()es Pythonreutilizado en el módulo paraEscapar caracteres especiales de expresiones regularesla función.

Escapará todos los caracteres especiales de expresiones regulares en la cadena (como.、*、?etc.) para que sean tratados como caracteres normales.

Definición de términos: escapeSignifica escapar, evadir.


Sintaxis básica y parámetros

Formato de sintaxis

re.escape(string)

Descripción de parámetros

  • string: La cadena a escapar

Descripción de la función

  • Valor de retorno: Devuelve la cadena escapada.

Ejemplos

Ejemplo 1: Uso básico

Ejemplos

import re

# Escapar cadenas que contienen caracteres especiales
text = "example.com?foo=1"

result = re.escape(text)

print("Original:", text)
print("Después de escapar:", result)

Resultado esperado de la ejecución:

原始: example.com?foo=1
转义后: example\.com\?foo\=1

Ejemplo 2: Uso en la búsqueda

Ejemplos

import re

# Buscar una cadena que contenga un punto (búsqueda literal, no regex)
text = "Ruta de archivo: C:\\Users\\test.txt"

# Escapar barras invertidas y puntos
pattern = re.escape("C:\\Users\\test.txt")

result = re.search(pattern, text)

if result:
    print("Encontrado:", result.group())

Resultado esperado de la ejecución:

找到: C:\Users\test.txt

Ejemplo 3: Comparación entre escapar y no escapar

Ejemplos

import re

text = "price: $100"

# Sin escapar: $ es un carácter especial en regex (fin de línea)
result1 = re.findall(r'$100', text)

# Después de escapar: $ se trata como un carácter normal
result2 = re.findall(re.escape('$100'), text)

print("Sin escapar:", result1)
print("Después de escapar:", result2)

Resultado esperado de la ejecución:

不转义: []
转义后: ['$100']

Ejemplo 4: Manejo de la entrada del usuario

Ejemplos

import re

# Caracteres especiales que el usuario podría ingresar
user_input = "python*"

text = "python* is great"

# Escapar la entrada del usuario antes de buscar
pattern = re.escape(user_input)
result = re.search(pattern, text)

print("Resultado de la búsqueda:", result.group() if result else "No encontrado")

Resultado esperado de la ejecución:

查找结果: python*

Módulo Python re

Otras extensiones