#!/usr/bin/perl use strict; use warnings; my (@all,$line,$fail,$success,$f,$s,$lc,$sc); push(@all, "1,1,,,,"); push(@all, "3,4,1,1,,"); push(@all, "1,1,1,1,,"); push(@all, "5,6,3,4,1,2"); push(@all, "1,1,1,1,1,1"); push(@all, "1,2,,,,"); push(@all, ",,1,2,,"); $lc = 0; #line count $sc = 0; #success count foreach $line (@all) { my @data = split(",", $line); $lc ++; $f = 0; $s = 1; while ($f < (scalar @data)) { if ($data[$f] !~ m/[0-9]/) { $f = $f + 2; $s = $s + 2; next; }; if ($data[$s] !~ m/[0-9]/) { $f = $f + 2; $s = $s + 2; next; }; if ($data[$f] + $data[$s] != 2) { $fail = 1; $success = 0; } else { $success = 1; $fail = 0; $sc ++; print "Line $lc contains a success, $sc successes found thus far...\n" } $f = $f + 2; $s = $s + 2; } }