in reply to Re: Elegant way to split into sequences of identical chars?
in thread Elegant way to split into sequences of identical chars?
use strict; use warnings; use Data::Dumper; print join " ", splitter('xx((556xx'); sub splitter { local $_ = shift; split / (?<!^) #not preceeded by + start of string. (?! #not followed by... (??{ quotemeta substr($_, $-[0]-1, 1) # the escaped +(quote-metad) last character of the last match. # note: $-[0] is th +e offset of start of last successful match. # $-[1] (not used h +ere) would be the offset of start of the first sub pattern. }) ) /x; }
|
---|