怎么删除字符串中相邻相同的字符

发布网友

我来回答

1个回答

热心网友

方案A:把连续的2个分号替换成一个,要反复替换直到没有为止

String s = "艾迪;好的的的;美女;是的的;同样;;;;;;干啥"; do { s = s.replaceAll(";;", ";");} while(s.indexOf(";;") >= 0);System.out.println(s);

方案B:从前向后分析每个字符,重复的忽略掉
String s = "艾迪;好的的的;美女;是的的;同样;;;;;;干啥"; StringBuilder builder = new StringBuilder();char lastChar = '\0';for(int i = 0;i < s.length();++i) { char c = s.charAt(i); if(c == ';') { if(c != lastChar) builder.append(c); lastChar = c; } else { lastChar = c; builder.append(c); }}System.out.println(builder.toString());

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com