Reemplazar cadenas en Python

Hoy veremos cómo reemplazar cadenas en Python, es decir, reemplazar una cadena por otra, dentro de una cadena. Vamos a ver también un poco de reemplazo usando expresiones regulares a través del módulo re.

Te enseñaré dos ejemplos, uno en donde reemplazamos cadenas y otro en donde hacemos lo mismo pero a través de expresiones regulares en Python.

Cambiar una letra por otra

Si quieres reemplazar una letra por otra, y quieres que sea un algoritmo propio entonces mira este post.

Reemplazo de cadenas en Python

Para una sustitución simple usamos a la función replace. Esta función devuelve una nueva cadena y su sintaxis es:

cadena_reemplazada = cadena_original.replace(busqueda, reemplazo, cuántas_veces)

Si no especificamos el argumento de cuántas veces, se reemplazarán todas las ocurrencias.

Usando expresiones regulares

Para reemplazar cadenas en Python usando una expresión regular usamos re.sub que tiene la siguiente sintaxis:

cadena_reemplazada = re.sub(expresión_regular, función_de_reemplazo, cadena_original)

En este caso tenemos algo muy poderoso: la función de reemplazo, que va a recibir el grupo de coincidencias y a partir de ello debe regresar la cadena que reemplaza a la coincidencia.

Primeramente esto sirve para buscar una cadena que coincida con una expresión regular, una vez que la encuentre, va a invocar a la función, en donde a partir de la cadena que coincida puede regresar otra cadena que será la que reemplaza.

Ejemplo: reemplazo de primer ocurrencia

Si queremos reemplazar una cadena literalmente, podemos invocar a replace. En este caso vamos a reemplazar únicamente la primer ocurrencia:

La salida será:

Hola mundo. Me gusta programar en Python porque JavaScript es un buen lenguaje

En este caso solo se reemplazó por Python en una ocasión, pues el tercer argumento es 1.

Reemplazando todas las ocurrencias

Como lo dije anteriormente, si quieres reemplazar todas las ocurrencias, simplemente no especifiques el tercer argumento:

En este caso, la salida cambia a:

Hola mundo. Me gusta programar en Python porque Python es un buen lenguaje

Ejemplo con expresión regular

Reemplazo de cadenas en Python – Expresión regular

El último ejemplo demuestra cómo reemplazar cadenas en Python usando expresiones regulares y una función de reemplazo por cada coincidencia de la búsqueda:

Definimos la función que va a reemplazar cada grupo en la línea 2. Si en este caso no te importa lo que contenga el grupo, olvídate del if y simplemente haz un return de la cadena por la que se va a sustituir.

Por otro lado en la línea 17 declaramos la expresión regular, para que más tarde en la línea 18 hagamos el reemplazo. Finalmente imprimimos la salida.

Poniendo todo junto

El código completo del ejemplo queda así:

Puedes ejecutar el código en este enlace, y puedes leer más sobre Python en mi blog o en la documentación oficial sobre expresiones regulares o cadenas.

Encantado de ayudarte


Estoy disponible para trabajar en tu proyecto, modificar el programa del post o realizar tu tarea pendiente, no dudes en ponerte en contacto conmigo.

No te pierdas ninguno de mis posts

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario