I'm at home today, with a much slower machine (P166 64Mb, linux 2.2.18pre21, Perl 5.005_03), so I've reduced the number of iterations to a million.
These benchmarks are also with the compl routine checking the length() of the test character first, and with the regex fixed -
Benchmark: timing 1000000 iterations of compl, exist, regex, tr...
compl: 17 wallclock secs (17.35 usr + 0.02 sys = 17.37 CPU)
exist: 15 wallclock secs (14.02 usr + 0.01 sys = 14.03 CPU)
regex: 18 wallclock secs (18.62 usr + 0.00 sys = 18.62 CPU)
tr: 16 wallclock secs (16.67 usr + 0.01 sys = 16.68 CPU)
So, faster than the regex, but still not as fast as the exist() method. Thanks for the suggestion though :-)
Pete |