俺は Regexp::Common でも推しておくか。

use Regexp::Common qw/number/;

$num =~ m/^$RE{num}{real}$/;