Pasar de un string a un array
hola a tod@s, tengo en un String lo q me sale de una consulta a una base de datos separando los
atributos de cada tupla con '*' ,cada tupla con '|' y al final pongo FIN.
Ejemplo:Pepe*Perez*Santos*|Raul*Hernandez*Rodriguez*|FIN
Ahora necesito meter cada atributo en un array, pero no se cómo hacerlo, alguna idea?
Gracias!
atributos de cada tupla con '*' ,cada tupla con '|' y al final pongo FIN.
Ejemplo:Pepe*Perez*Santos*|Raul*Hernandez*Rodriguez*|FIN
Ahora necesito meter cada atributo en un array, pero no se cómo hacerlo, alguna idea?
Gracias!
lo mas optimo seria utilizar la funcion split y join.
por ejemplo.
cadena="Pepe*Perez*Santos*|Raul*Hernandez*Rodriguez*|FIN"
arreglo=cadena.split("|")
con esto ya tendiras un arreglo con 3 posiciones:
en la 0: Pepe*Perez*Santos*
en la 1: Raul*Hernandez*Rodriguez*
en la 2: FIN
luego podrias obtener un segundo arreglo:
arreglo2=arreglo[0].split("*")
y obtendrias el siguiente arreglo de 4 posiciones:
en la 0: Pepe
en la 1: Perez
en la 2: Santos
en la 3:
si te das cuenta no seria necesario el ultimo asterisco ya que te crearia una posicion vacia.
tampoco seria necesario que envaras el FIN.
ya que el arreglo.length te devolvera una posicion mas que no es un dato.
de tal manera que podrias tener una funcion:
cadena="Pepe*Perez*Santos*|Raul*Hernandez*Rodrigu
function retornaDato(Registro,Atributo)
{
return cadena.split("|")[Registro].split("*")[Atributo]
}
si tenes dudas, escribime
salu2
Fradique
por ejemplo.
cadena="Pepe*Perez*Santos*|Raul*Hernandez*Rodriguez*|FIN"
arreglo=cadena.split("|")
con esto ya tendiras un arreglo con 3 posiciones:
en la 0: Pepe*Perez*Santos*
en la 1: Raul*Hernandez*Rodriguez*
en la 2: FIN
luego podrias obtener un segundo arreglo:
arreglo2=arreglo[0].split("*")
y obtendrias el siguiente arreglo de 4 posiciones:
en la 0: Pepe
en la 1: Perez
en la 2: Santos
en la 3:
si te das cuenta no seria necesario el ultimo asterisco ya que te crearia una posicion vacia.
tampoco seria necesario que envaras el FIN.
ya que el arreglo.length te devolvera una posicion mas que no es un dato.
de tal manera que podrias tener una funcion:
cadena="Pepe*Perez*Santos*|Raul*Hernandez*Rodrigu
function retornaDato(Registro,Atributo)
{
return cadena.split("|")[Registro].split("*")[Atributo]
}
si tenes dudas, escribime
salu2
Fradique
si pones el contenido de las tuplas entre signos " y las separas signos , podes crear el array facilmente a partir del string:
la idea es que te que algo asÃ:
"Pepe","Perez","Santos","Raul","Hernandez","Rodriguez"
Probá lo siguiente:
eval('tu_array = new Array('+ tu_string + ')');
la idea es que te que algo asÃ:
"Pepe","Perez","Santos","Raul","Hernandez","Rodriguez"
Probá lo siguiente:
eval('tu_array = new Array('+ tu_string + ')');
