if ($min >= $oldmin+5 || $oldmin-$min >= 54){ #### if ($mon != $oldmon){ ... #### my @pagesource = split( /<\/tr>/, $pagesource ); my $found = 0; for ( @pagesource ) { if ( /(EUR\/USD).*?(\d+\.\d+).*?(\d+\.\d+)/s ) { # open output files here... print OUT "$1,$mon:$mday:$year:$hour:min,$2,$3\n"; print DAY "$1,$mday:$hour:$min,$2,$3\n"; print MONTH "$1,$mday:$hour:$min,$2,$3\n"; $found++; # close output files here... last; } } print "No EUR/USD data found.\n" unless ( $found );