Hi, I barely have any idea about perl or programming I am trying to learn cause I need to... could you please explain to me each line of this code?
my ($fin, $dt, $vard ); my %anc = (); my %cnt = (); my @myfiles =(); my @all = (); @myfiles=<A*> or die "No files to open A\* for reading. $!"; foreach $fin (@myfiles) { ##my $fin="A20100222.1700-1715_GWLD1E_1.xml"; open INP, "$fin" or die "Cannot open $fin for read :$!"; $fin =~ (/^A(\d{8}).(\d{4})/); my $dt = "$1" . ":" . "$2"; #print "$dt\n"; while (<INP>) { if (/^<moid>.*=(\d+)</) { $anc{$1} += 1; } elsif (/^<mt>(.+)</) { $cnt{$1} += 1; } elsif (/^<\/md>$/) { last; } } close (INP); } open(OUT, ">>all_announc_cnt.txt") or die "Cannot open all_announc_cnt +.txt file for writting :$!"; foreach $vard (sort {$a <=> $b} (keys(%anc))) { print OUT "$vard:$anc{$vard}\n"; } print OUT "\n"; foreach $vard (sort (keys(%cnt))) { print OUT "$vard:$cnt{$vard}\n"; #push (@all, "$vard:$anc{$vard}"); } close (OUT);
In reply to Please Explain Code by costas1
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |