A few suggestions:

All that aside, I agree with Riales: the problem as stated in the OP can be solved with a simple hash. If you don't agree, then you must have some problem other than the one you described in the OP.

Also, I couldn't understand your reply to Riales, so here's an alternate version of the approach he suggested -- if you still have some problem that this doesn't solve, you'll need to describe that other problem.

I'll base the input data handling on the sample data as you presented it (rather than on the OP code snippet):

use strict; use warnings; my %words; for my $fnum ( 1 .. 4 ) { open( I, '<', "File$fnum.txt" ) or die "File$fnum.txt: $!\n"; while (<I>) { chomp; s/^[\s\d.]+//; # remove initial digit(s), period, whitespace, + if any $words{$_} .= $fnum unless ( exists( $words{$_} ) and $words{$_} =~ /$fnum$/ ) +; } } print "Words found in all four input files:\n"; for ( sort keys %words ) { print "$_\n" if ( $words{$_} eq '1234' ); }

In reply to Re: Hash of hashes: Check if the element is present in previous hash table by graff
in thread Hash of hashes: Check if the element is present in previous hash table by snape

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.