in reply to combined into a single regex

my @data = (-123.004,-.008,0,-0,.0987,1.1,1.0,1.0001,12345,'d','test') +; foreach my $value (@data){ if($value =~ /(\d.*)/) { print "$1 is true\n"; } else{ print "false\n"; } }

Update

I add another values to @data, so @data become :

my @data = (-123.004,-.008,0,-0,.0987,1.1,1.0,1.0001,12345,'d','test', +'d5','5d', '0d5', 'd0d');

and /(\d.*)/ wont work for this @data

Solved it with /^(-?)(\d+)(\.?)(\d*)$/

Have a look at skeeve's || ysth's code