in reply to Is a integer or string.
Here is a little piece of code you might find informative:
#!/usr/bin/perl $a = shift; $b = shift; #for intergers only if ($a =~ /^\d+$/ && $b =~ /^\d+$/) { printf "$a == $b (%s)\n", $a == $b ? "yes" : "no"; } else { printf "$a eq $b (%s)\n", $a eq $b ? "yes" : "no"; } #or for floating point numbers if ($a =~ /^\d+(\.\d?)?$/ && $b =~ /^\d+(\.\d?)$/) { printf "$a == $b (%s)\n", $a == $b ? "yes" : "no"; } else { printf "$a eq $b (%s)\n", $a eq $b ? "yes" : "no"; }
> perl diff 1 1. 1 eq 1. (no) 1 == 1. (yes) This still needs work, as it does not see that 1e2 == 100.-- gam3
A picture is worth a thousand words, but takes 200K.
- Comment on Re: Is a integer or string.
- Download Code
In Section
Seekers of Perl Wisdom