sub atoi { my $t; foreach my $d (split(//, shift())) { $t = $t * 10 + $d; } } $number = atoi("123"); #### $string = sprintf("%f", 123.45); #### if ($string == "$string") { # It is a number } #### if ($var =~ /(?=.)M{0,3}(C[MD]|D?C{0,3})(X[CL]|L?X{0,3})(I[XV]|V?I{0,3})/) { print "$var contains a number.\b"; }