I've got a new regex trick up my sleeve, and although I'm proposing a patch for it, I'm not sure it'll be accepted. It's a new pseudo-anchor, \K, which tells the engine to pretend it just started matching. That's not a very good explanation, so let me use an example:
I'll post more soon, when I have a patch and what-not, but I hope this gives you a good idea of what this anchor does.# code to remove '.z' from $str # old way (slow) $str = join '.', 'a' .. 'z'; $str =~ s/(.*)\..*/$1/; # new way (fast) $str = join '.', 'a' .. 'z'; $str =~ s/.*\K\..*//;
Another way of looking at it is it lets you have a variable-width look-behind at the beginning of your regex... it allows your regex to have a prelude, as it were.
_____________________________________________________
Jeff[japhy]Pinyan:
Perl,
regex,
and perl
hacker, who'd like a job (NYC-area)
s++=END;++y(;-P)}y js++=;shajsj<++y(p-q)}?print:??;
Back to
Meditations