in reply to Equality checking for strings AND numbers
Cheers,use strict; use warnings; use Scalar::Util qw(looks_like_number); my $x1 = '0x9'; my $x2 = 0x9; my $x3 = '9'; my $x4 = '9e0'; my $x5 = 9e0; print "1: ", comp($x1, 9), "\n"; print "2: ", comp($x2, 9), "\n"; print "3: ", comp($x3, 9), "\n"; print "4: ", comp($x4, 9), "\n"; print "5: ", comp($x5, 9), "\n"; sub comp { my ($a, $b) = @_; if (looks_like_number($a) && looks_like_number($b)) { return ($a == $b); } else { return ($a eq $b); } } __END__ Outputs: 1: 2: 1 3: 1 4: 1 5: 1
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Equality checking for strings AND numbers
by Anonymous Monk on Jul 13, 2007 at 05:01 UTC | |
by rpanman (Scribe) on Jul 13, 2007 at 07:58 UTC | |
by rpanman (Scribe) on Jul 13, 2007 at 06:32 UTC | |
by Anonymous Monk on Jul 13, 2007 at 14:26 UTC |