Regexen are almost always going to be slower than substr. Normally, I'd put a big notice here about premature optimization being the root of all something or other, but in this case we actually do need to optimize. Of course, benchmarks need to be done to be sure.

----I wanted to explore how Perl's closures can be manipulated, and ended up creating an object system by accident.
-- Schemer