my $re4 = qr/\b([Na0-9\.\-\+]+)\b/; # capture a floating point number my @vals = ($x =~ m/$re4/gx ); croak "Invalid line '$x'" if @vals != 4; ($d, $e, $f, $g) = @vals;