Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Extracting via Hash of Hashes

by mt2k (Hermit)
on May 21, 2002 at 23:59 UTC ( #168318=note: print w/replies, xml ) Need Help??

in reply to How to extract from the array...exemple txt file:

Okay, here is something I whipped up. Because I see a ",D" at the end of the first line, I added a bit to the regex I used... You may have to edit the regex depending what the entire line looks like.

#!c:/perl/bin/perl -w use strict; #Declare variables use vars qw(%hash $key $value); #Open the file with data in it open FILE, "info.log"; #Create a hash of hashes of companies/files while (<FILE>) { $hash{$4}{$5}++ while (/(.*?),(.*?),(.*?),(.*?),(.*?),(.*?)+/g); } #Show the results foreach my $company (keys %hash) { print "Company: $company\n"; print "\t$key accessed $value times.\n" while (($key,$value) = ea +ch %{$hash{$company}}); print "\n"; }

Update: If you hate regexes (or simply to be safer), you could always split. This would replace the one while loop with:

while (<FILE>) { my @a = split /,/; $hash{$a[3]}{$a[4]}++; }

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (3)
As of 2022-09-29 08:55 GMT
Find Nodes?
    Voting Booth?
    I prefer my indexes to start at:

    Results (125 votes). Check out past polls.