[EMAIL PROTECTED] wrote:
Lo all,
Which is faster for checking that user input is numeric, using the
look_like_number function or a compiled regex?
The number in question is a positive 4 digit integer.
I think you can beat /^\d{4}$/ only by using a carefully crafted piece
of C code.
Which would be faster if I also had to check that the number was
in 24hr clock format?
ie one regex to do that or looks_like_number followed by another
regex?
Like above: /^\d{2}:\d[2}$/ without seconds, /^\d{2}:\d[2}:\d{2}$/ with
seconds. Note that those REs do not check the values, 99:99 would be
accepted as a valid 24h clock value. To check the values, do something
like this:
$value=~/^(\d{2}):(\d[2}):(\d{2})$/ or die "not 24h format";
$1<24 or die "invalid hour value";
$2<60 or die "invalid minute value";
$3<60 or die "invalid second value"; # 62 if you are pedantic and want
to accept leap seconds
Alexander
--
Alexander Foken
mailto:[EMAIL PROTECTED] http://www.foken.de/alexander/