jeste k cislum
Jiri Polcar
polcar na physics.muni.cz
Pátek Říjen 25 15:21:38 MEST 2002
Zdravim,
zkusil jsem takovy testik. Vygeneroval jsem 100000 nahodych textovych
retecu a nechal jsem Perl rozhodovat, zda jde o cislo, ci nikoli. Pouzil
jsem dva zopusoby:
1) Odchytnuti warningu
real 0m11.526s
user 0m10.780s
sys 0m0.130s
2) Regularni vyraz
real 0m3.461s
user 0m3.150s
sys 0m0.020s
Nevim, jestli je test (a jeho vysledek) k necemu, ale kdyz uz jsem ho
udelal, tak se o nej podelim.
K testovani jsem pouzil tyto fce ( RE ma dokonalosti daleko):
sub isNumber_warn {
my $string = shift @_ || $_;
$SIG{__WARN__} = sub { die @_ };
eval { $string += 0 };
return not $@;
}
sub isNumber_re {
my $string = shift @_ || $_;
return ( $string =~ /^[+-]?\d*(\.\d*)?(E[+|-]?\d+)?$/i );
}
--
JP
Další informace o konferenci Perl