I was wondering what is the best way to convert something like \"haaaaapppppyyy\" to \"haappyy\".
Basically, when parsing slang, people sometimes repeat characters
It can be done using regular expressions:
>>> import re >>> re.sub(r'(.)\1+', r'\1\1', "haaaaapppppyyy") 'haappyy'
(.)\1+ repleaces any character (.) followed by one or more of the same character (because of the backref \1 it must be the same) by twice the character.
(.)\1+
.
\1