"Meino Christian Cramer" <Meino.Cramer@gmx.de> schrieb im Newsbeitrag
news:20040705.091922.03982506.Meino.Cramer@gmx.de...
From: "Gavin Sinclair" <gsinclair@soyabean.com.au>
Subject: Re: Transforming...
Date: Mon, 5 Jul 2004 16:07:19 +0900
Hi Gavin,
whow! what a fast reply ! Thank you very much !
I want an algorithm, which when applied like this
b=<algo>
it does the same as I would do this by hand:
b=[[<val1>,<val2>,<val3>],[<val4>,<val5>,<val6>],[<val7>,<val8>,<val9>]]
That's exactly what Gavin gave you. What are you after?
robert
> Meino wrote:
>
> > In my program there is a hash of this form
> >
> > a={ "<string_a>" => [<val1>,<val2>,<val3>],
> > "<string_b>" => [<val4>,<val5>,<val6>],
> > "<string_c>" => [<val7>,<val8>,<val9>]
> > }
> >
> > I am looking for a short and handy way to produce an array out of
> > this, which looks like:
> >
> >
b=[[<val1>,<val2>,<val3>],[<val4>,<val5>,<val6>],[<val7>,<val8>,<val9>]]
···
> >
> > without iterating over the hash.
>
> I presume you mean you just want an array of the *values* in the hash?
>
> b = a.values
>
> If you want the values sorted according to the order of the keys:
>
> b = a.keys.sort.map { |k| a[k] }
>
> Cheers,
> Gavin
>
>
>
>
>