#!/usr/bin/perl -w use strict; my @films; { local $/ = '* '; @films = ; chomp @films; } shift @films; foreach (@films) { my ($header, $data) = split /\n/, $_, 2; if (my ($movie, $show) = $header =~ /Movie="(\w+)"\s+show=(\d+)/) { my @nums = grep { $_ >= 20 } $data =~ /(\d\d)/g; my $tot; $tot += $_ foreach @nums; print "$movie\t$show\t$tot\n"; } else { print "Invalid Record: $_\n"; } } __END__ * Movie="ABC" show=4 10 20 30 14 90 30 21 13 11 10 09 23 22 05 22 15 19 20 * Movie="XYZ" show=4 10 20 30 14 90 30 21 13 11 10 09 23 22 05 22 15 19 10