, Perl regex negate! .. , /regex/
, , regex capture:
m/(.)(\1)+/
( ). .
:
(?:^|(.)(?!\1))(.)(?!\2)
"f" 2 3. "f" 2 3 5.
:
$str=~/^(([a-z])\g{-1}+)*(?<c>[a-z])/i;
$char = $+{c};
.
, , :
while( <DATA> ) {
chomp;
print "BEFORE: $_\n";
s/(.)(\1)+//g;
print "AFTER: $_\n";
print "charater: " . substr($_,0,1) . "\n\n";
}
__END__
aabbccddeef
faabbccddeef
faabbccddeefax
xfaabbccddeefx
xabcdefghai
cccdddeeea12345
1234a5678a23
aabbcdecc
abcdefg
aabbccddeef
cccdddeeea12345
" ". ((edit: reread: , , , ...))
, .