Anuncios Google

¿Explode letra por letra en LuaDev?

Como se puede "explotar" un string con la función string.explode() pero cada letra sin tener que establecer un separador ni nada parecido. Ejemplo:

stringazo = "Esternocleidomastoideo"
 
¿¿ string.explode(stringazo,??) ??

Un saludo. 


 

 


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Si quieres que cada letra

Si quieres que cada letra forme una posición en una tabla puedes hacer una función casera al estilo:

stringazo = "Esternocleidomastoideo"
 
function string.explode(_string)
	local tabla = {};
	for i = 1, i < #_string do
		tabla[i] = string.sub(_string, i, i);
	end
	return tabla;
end
 
mitabla = string.explode(stringazo);

Imagen de NEKERAFA

Y aún más fácil

Puedes hacer lo siguiente con string.gmatch():

mistring = "Esternocleidomastoideo"
 
function string.split(str) -- Así no sobreescribo la funcion string.explode()
   local tabla = {}
   for char in str:gmatch(".") do
      table.insert(tabla, char)
   end
   return tabla
end
 
mitabla = string.split(mistring)


NekeOS, el nuevo shell para PSP

PS4 500GB OFW, PS3 320GB OFW, PS3 500GB OFW, PSP 6.39 PRO-C Fix4.

Sony Xperia Z1 Compact con Android 5.1.1

Portatil Lenovo z50-70 Intel® Core™ i7-4510U y NVIDIA GeForce 840M con Elementary OS 0.3.2 Freya (64 bits) y Windows 10 (64 bits).

Si también, que haga un timer

Si también, que haga un timer y pruebe diversas formas y que elija la más rápida.

Genial...

Tenía un code parecido a ese :D

La unica duda es... ¿por qué escribes un "_" antes de string? ¿Es por algo de la tabla global o algo así? Es que no lo entiendo del todo lo del "_"...

Un saludo.


 

 

Es que creo que poner

Es que creo que poner "string" a secas "afecta" al módulo string, no lo sé pruébalo xD Ah lo de la tabla global creo que es _G.

Ahh...

Ok ya lo entiendo pero me podrías explicar que es la tabla global, por favor?? :D

Según tengo entendido es una

Según tengo entendido es una tabla donde todo las variables globales que creas se almacenan ahi (y todas las funciones ya existentes).
Por ejemplo si haces:

hola = 5

hola también podrá ser llamado _G.hola

También creo que puedes llamar a cualquier función así:

_G.screen.print(5, 5,"Jai uol" )

Ooook...

Entiendo, pero que utilidad puede tener eso?? No se la encuentro jejeje...

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.