Foros del Web » Programación para mayores de 30 ;) » Programación General »

pasar un Array a un Hash ??

Estas en el tema de pasar un Array a un Hash ?? en el foro de Programación General en Foros del Web. Tengo una Array construido así: Código: @adn = (123123, "aaddadadadada", 123124,"addaddadaddaadad",123125, "adadadaaadddadad"); Teniendo eso, yo quería construir un Hash, de forma que me quedara: Código: ...
  #1 (permalink)  
Antiguo 30/04/2011, 09:25
Avatar de sesperanto  
Fecha de Ingreso: noviembre-2006
Mensajes: 7
Antigüedad: 18 años
Puntos: 0
pasar un Array a un Hash ??

Tengo una Array construido así:

Código:
@adn = (123123, "aaddadadadada", 123124,"addaddadaddaadad",123125,
"adadadaaadddadad");
Teniendo eso, yo quería construir un Hash, de forma que me quedara:

Código:
%hash = {
123123 => "aaddadadadada",
123124 => "addaddadaddaadad",
123125 => "adadadaaadddadad"
}
He intentado transformar el Array a una cadena con todos los elementos separados por un espacio, con la función eq.

Con la función join transformo todo en una linea separado de un espacio:
Código:
$texto = join(" ",@adn);
quedando algo así

Código:
123123 aaddadadadada 123124 addaddadaddaadad 123125 adadadaaadddadad"
Y ahora utilizando la función eq, se debería meter en forma de Hash, pero no me deja hacer esto:

Código:
%hash = qw ($texto );
Pero esto si que me deja hacerlo...

Código:
%hash = qw (123123, "aaddadadadada",  123124, "addaddadaddaadad", 123125, 
"adadadaaadddadad");
pero no me sirve, porque tengo todo dentro de una variable

COMO DEBERÍA HACERLO PARA QUE FUNCIONARA????

GRACIAS!!
  #2 (permalink)  
Antiguo 30/04/2011, 09:32
Avatar de sesperanto  
Fecha de Ingreso: noviembre-2006
Mensajes: 7
Antigüedad: 18 años
Puntos: 0
Respuesta: pasar un Array a un Hash ??

Añado información:

He encontrado esto:

Código:
my @a = (1, 2, 3, 4, 5, 6);
my %h = map { $_ => $_ } @a;
Pero me queda así: :(

Código:
%h = {
1 => 1;
2 => 2;
3 => 3;
4 => 4;
5 => 5;
6 => 6;
}
Yo quiero quedase así: :)

Código:
%h = {
1 => 2;
3 => 4;
5 => 6;
}
  #3 (permalink)  
Antiguo 30/04/2011, 17:00
Colaborador
 
Fecha de Ingreso: mayo-2006
Ubicación: Valladolid
Mensajes: 525
Antigüedad: 18 años, 6 meses
Puntos: 11
Respuesta: pasar un Array a un Hash ??

Código Perl:
Ver original
  1. %hash = @adn;
__________________
JF^D Perl Programming en Español

Etiquetas: hash, perl, perl-y-cgi
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:10.