for $invalue (qw/ 1 -10 abc /) { eval{ use warnings FATAL=>qw/numeric/; $invalue + 0 }; ### Is Number? if ( $@ ) { print "$invalue is *not* a Number; Details: $@\n"; } else { print "$invalue appears to be a number.\n"; } }