perl -E ' use Scalar::Util "looks_like_number"; for (qw{1 0b10 0o10 0x10}) { say "$_: ", looks_like_number($_) ? 1 : 0 } ' 1: 1 0b10: 0 0o10: 0 0x10: 0