/^[A-Z]\d\d +1?\d +\d?\d(?:\.1)? +[0-3](?: +\d?\d\.\d)+ *$/ or ($bad{$line++} = $_) && next; my ($t, $p, $s, $d, @c) = split / +/;