Lua:
Extracción de subcadenas

Cómo:

-- Ejemplo 1: Extraer una parte de una cadena
local texto = "Lua es divertido"
local subcadena = texto:sub(5, 7)
print(subcadena)  -- Salida: "es"

-- Ejemplo 2: Extraer hasta el final de una cadena
local subcadena_final = texto:sub(9)
print(subcadena_final)  -- Salida: "divertido"

-- Ejemplo 3: Uso de índices negativos
local subcadena_negativos = texto:sub(-9, -1)
print(subcadena_negativos)  -- Salida: "divertido"

Profundizando

Lua tiene varias funciones para manejar cadenas, pero string.sub es la más directa para extraer subcadenas. Desde sus primeras versiones, Lua ha facilitado la manipulación de textos, y los índices negativos heredan de C la idea de contar desde el final. Otras funciones como string.match y las expresiones regulares en lenguajes como Perl ofrecen enfoques alternativos que pueden ser más flexibles pero también más complejos. A nivel de implementación, al extraer subcadenas, Lua intenta ser eficiente, evitando la creación de múltiples copias de la cadena original siempre que sea posible.

Ver También