Menu
Coddy logo textTech

string.gsub() para sustitución

Parte de la sección Lógica y flujo de control del Journey de Lua de Coddy. Lección 35 de 54.

Al trabajar con cadenas, a menudo necesitas buscar y reemplazar texto. La función string.gsub() de Lua facilita esta tarea al realizar una sustitución global: encontrar todas las apariciones de un patrón y reemplazarlas por otra cosa.

La sintaxis básica toma tres argumentos: la cadena original, el patrón que se debe buscar y el texto de reemplazo:

local result = string.gsub(originalString, pattern, replacement)

Aquí tienes un ejemplo sencillo que reemplaza todos los espacios por guiones bajos:

local text = "hello world from lua"
local cleaned = string.gsub(text, " ", "_")
print(cleaned)  -- Salida: hello_world_from_lua

La función devuelve dos valores: la cadena modificada y el número de reemplazos realizados. Puedes capturar ambos si es necesario:

local result, count = string.gsub("foo bar foo", "foo", "baz")
print(result)  -- Salida: baz bar baz
print(count)   -- Salida: 2

A diferencia de algunas funciones de cadena que solo encuentran la primera coincidencia, string.gsub() reemplaza cada aparición de forma predeterminada, lo que la hace perfecta para tareas de limpieza de texto, como eliminar caracteres no deseados o estandarizar el formato.

challenge icon

Desafío

Fácil

Escribe una función cleanText que tome text y devuelva una versión limpia con todos los espacios reemplazados por guiones bajos.

Usa string.gsub() para reemplazar cada carácter de espacio en el texto por un carácter de guion bajo.

Parámetros:

  • text (cadena): El texto que se limpiará

Devuelve: El texto con todos los espacios reemplazados por guiones bajos (cadena)

Pruébalo tú mismo

function cleanText(text)
    -- Escribe el código aquí
end
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Lógica y flujo de control

Practica por tu cuenta: Compilador de Lua online