in reply to Dynamically creating a hash based on a variable

It may be that you want something like:

use strict; use warnings; my %dates; while (<DATA>) { next unless /(.)(..)(..)(.{4})/; my $date = "$4$3$2"; if (exists $dates{$date}) { print "<TD class=table_font>$date - Hash exists</TD>\n"; # play with hash } else { print "<TD class=table_font>$date - Hash doesn't exist</TD>\n" +; # create the hash $dates{$date} = undef; # play with hash } } __DATA__ x11112007 y11122007 p11112007 x11132007

Prints:

<TD class=table_font>20071111 - Hash doesn't exist</TD> <TD class=table_font>20071211 - Hash doesn't exist</TD> <TD class=table_font>20071111 - Hash exists</TD> <TD class=table_font>20071311 - Hash doesn't exist</TD>

Note that it helps a lot to understand what you are trying to do if you provide a little data and tell us what you expect to see and what you actually see.


DWIM is Perl's answer to Gödel