in reply to Remove repeated characters from a string

This bit of code will do the job:

$string =~ s/(.)\1/$1/g

Alternatively, if you want to ignore case when comparing, you could use:

$string =~ s/(.)\1/$1/gi

And finally, if you wanted to trim any number of duplicates down to a single letter, this would work:

$string =~ s/(.)\1+/$1/gi

Replies are listed 'Best First'.
Re:^2 Remove repeated characters from a string
by Anonymous Monk on May 13, 2004 at 14:55 UTC
    the duplicates are not nesscarly beside each other
    where = wher Expressions = Expresion Finished = Finshed indicated = indcate

      This will do that for you:

      1 while $string =~ s/(.)(.*)\1/$1$2/g
        This construction with the while loop made my day. Thanks a lot, sir knew! :D

      If you had put more effort into your first question you would not now be explaining what you really meant.