加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用正则表达式删除字符串中的重复字符?

发布时间:2020-12-14 05:37:28 所属栏目:百科 来源:网络整理
导读:我需要替换字符串中的重复字符.我试过用 outputString = str.replaceAll("(.)(?=.*1)",""); 这将替换重复的字符,但字符的位置会发生变化,如下所示. 输入 haih 产量 aih 但我需要得到一个输出hai.也就是说,字符串中出现的字符的顺序不应该改变.以下是某些投
我需要替换字符串中的重复字符.我试过用

outputString = str.replaceAll("(.)(?=.*1)","");

这将替换重复的字符,但字符的位置会发生变化,如下所示.

输入

haih

产量

aih

但我需要得到一个输出hai.也就是说,字符串中出现的字符的顺序不应该改变.以下是某些投入的预期产出.

输入

aaaassssddddd

产量

asd

输入

cdddddggggeeccc

产量

cdge

怎么能实现这一目标?

解决方法

好像你的代码留下了最后一个字符,那么这个怎么样?

outputString = new StringBuilder(str).reverse().toString();
// outputString is now hiah
outputString = outputString.replaceAll("(.)(?=.*1)","");
// outputString is now iah
outputString = new StringBuilder(outputString).reverse().toString();
// outputString is now hai

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读