Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re^2: Print/Lookup from array element to another array element

by Dr Manhattan (Beadle)
on Apr 07, 2013 at 09:53 UTC ( #1027344=note: print w/ replies, xml ) Need Help??


in reply to Re: Print from array element to another array element
in thread Print from array element to another array element

Hi Loops

I used the 'say' feature and it works correctly. My next question is- How do I lookup from one element in a array to another one?

For instance the word "food" is a element in a hash. I want to lookup and if the combined elements of my array exists in the hash it should be printed

I tried this-

if (exists $hash{@array[3..$end]}) { say @array[3..$end]; }


Comment on Re^2: Print/Lookup from array element to another array element
Download Code
Re^3: Print/Lookup from array element to another array element
by choroba (Abbot) on Apr 07, 2013 at 09:59 UTC
    The keys in a hash are always strings. You cannot use an array slice as a hash key. You have to join the list to form a string:
    exists $hash{ join q(), @array[3 .. $end] }
    لսႽ ᥲᥒ⚪⟊Ⴙᘓᖇ Ꮅᘓᖇ⎱ Ⴙᥲ𝇋ƙᘓᖇ
Re^3: Print/Lookup from array element to another array element
by Anonymous Monk on Apr 07, 2013 at 10:02 UTC
Re^3: Print/Lookup from array element to another array element
by RichardK (Priest) on Apr 07, 2013 at 11:53 UTC

    If you want to find one string inside another, just use index

    So, something along these lines :-

    my $text ='catfood'; # returns -1 if not found say index($text,'food',0);

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1027344]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (5)
As of 2014-11-23 17:27 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (134 votes), past polls