假设我有一个字符串:
String s = "hellllooooo howwwwwww areeeeeee youuuuuuu";
我想丢弃重复的字母并希望得到:
"helloo howw aree youu"
我使用::
完成了匹配 matches(".*([a-z])\\1{3,}.*"
但是如何将helloooooooo替换为helloo和其他人?
答案 0 :(得分:4)
以下任何一项都会产生您想要的结果:
s = s.replaceAll("([a-z])\\1+", "$1$1");
s = s.replaceAll("(([a-z])\\2)\\2*", "$1");