Menu
Coddy logo textTech

table.concat()

Parte de la sección Logic & Flow del Journey de Lua de Coddy — lección 5 de 54.

A veces necesitas combinar todos los elementos de una tabla de estilo lista en una sola cadena. Lua proporciona la función table.concat() específicamente para este propósito, lo que facilita la unión de los elementos de la tabla con un separador de tu elección.

La sintaxis básica se ve así:

local result = table.concat(myTable, separator)

Aquí tienes un ejemplo sencillo con una lista de palabras:

local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence)  -- Resultado: Hello from Lua

También puedes controlar qué parte de la tabla unir proporcionando las posiciones de inicio y fin como argumentos adicionales. Esto es útil cuando solo quieres combinar elementos específicos:

local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial)  -- Salida: 2-3-4

La función table.concat() funciona exclusivamente con tablas de tipo lista y convierte cada elemento en una cadena antes de unirlos.

challenge icon

Desafío

Fácil

Escribe una función buildPath que reciba una tabla folders y una cadena separator, y devuelva una única cadena de ruta con todas las carpetas unidas por el separador.

Usa table.concat() para combinar todos los nombres de las carpetas en una única cadena de ruta.

Parámetros:

  • folders (table): Una tabla de tipo lista que contiene nombres de carpetas como cadenas
  • separator (string): El carácter o cadena a utilizar entre los nombres de las carpetas (por ejemplo, "/" o "\\")

Devuelve: Una única cadena con todas las carpetas unidas por el separador (string)

Hoja de referencia

La función table.concat() combina todos los elementos de una tabla de tipo lista en una sola cadena con un separador:

local result = table.concat(myTable, separator)

Ejemplo básico:

local words = {"Hello", "from", "Lua"}
local sentence = table.concat(words, " ")
print(sentence)  -- Output: Hello from Lua

Puedes especificar las posiciones de inicio y fin para unir solo elementos específicos:

local numbers = {"1", "2", "3", "4", "5"}
local partial = table.concat(numbers, "-", 2, 4)
print(partial)  -- Output: 2-3-4

La función funciona exclusivamente con tablas de tipo lista y convierte cada elemento en una cadena antes de unirlos.

Pruébalo tú mismo

function buildPath(folders, separator)
    -- 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 Logic & Flow