There is only one $_ in your program and you did use it for two different purposes. One has to be careful sometimes with Perl's build-in variables.
From "Modern Perl", page 7: http://onyxneon.com/books/modern_perl/modern_perl_a4.pdf
As English gets confusing when you have too many pronouns and antecedents, you must take care mixing uses of $_ implicitly or explicitly. Uncautious simultaneous use of $_ may lead to one piece of code silently overwriting the value written by another. If you write a function which uses $_, you may clobber a caller function's use of $_.UPDATE: In order to make your script more robust overall, you might also want to remove $_ from your outer loop.
foreach my $regex (@regexes){ ($fileBodyMatch, $decode ) = checkFileBody ($file, $regex->{bodyre +gex}); }
In reply to Re^3: Strange Global Array issue
by hdb
in thread Strange Global Array issue
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |