Saltar al contenido

Dividir una cadena usando string.gmatch () en Lua

Solución:

local s = "one;two;;four"
local words = {}
for w in (s .. ";"):gmatch("([^;]*);") do 
    table.insert(words, w) 
end

Añadiendo uno extra ; al final de la cadena, la cadena ahora se convierte en "one;two;;four;", todo lo que quieras capturar puede usar el patrón "([^;]*);" para igualar: cualquier cosa que no sea ; seguido de un ;(avaro).

Prueba:

for n, w in ipairs(words) do
    print(n .. ": " .. w)
end

Producción:

1: one
2: two
3:
4: four
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *