Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot

Re^5: grep and dereferencing an array of arrays

by McA (Priest)
on Sep 06, 2013 at 20:34 UTC ( #1052763=note: print w/replies, xml ) Need Help??

in reply to Re^4: grep and dereferencing an array of arrays
in thread grep and dereferencing an array of arrays

Ok, that puts some light on your problem. This may be your solution:

#!/usr/bin/env perl use strict; use warnings; use 5.010; use Data::Dumper; my $choices = [ [ 'a', 'W', 'interupt', ], [ 'b', 'R', 'interrupt', ], [ 'c', 'W', 'innterupt', ], [ 'd', 'W', 'intterupt', ] ]; my $answer = 'd'; # As we know that the answer matches only one choice # and we have exactly one matching answer. my $chosen_answer = (grep { $_->[0] eq $answer } @$choices)[0]; say Dumper($chosen_answer);


Replies are listed 'Best First'.
Re^6: grep and dereferencing an array of arrays
by choroba (Bishop) on Sep 06, 2013 at 21:04 UTC
    Or, maybe more readable for some:
    my ($chosen_answer) = grep { $_->[0] eq $answer } @$choices;
    لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ

      I have to agree that this is more elegant and oakb asked for an elegant solution. Eily proposed almost the same a little earlier.

      Probably I can argue that my solution is more explicit. ;)


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1052763]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (5)
As of 2018-06-23 10:37 GMT
Find Nodes?
    Voting Booth?
    Should cpanminus be part of the standard Perl release?

    Results (125 votes). Check out past polls.