c# – 如何删除字符串中的重复字符

我有一个网站允许用户评论照片.
当然,用户会发表如下评论

‘OMGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG!!!!!!!!!!!!!!!’

要么

‘YOU SUCCCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKK’

你懂了.

基本上,我想通过删除至少大部分超重复字符来缩短这些评论.
我确定有一种方法可以使用Regex …,但是不能弄清楚.

有任何想法吗?

解决方法

请记住,英语使用双字母通常你可能不想盲目地消除它们.这是一个正则表达式,将摆脱任何超越双重的东西.
Regex r = new Regex("(.)(?<=\\1\\1\\1)",RegexOptions.IgnoreCase | RegexOptions.CultureInvariant | RegexOptions.Compiled);

var x = r.Replace("YOU SUCCCCCCCCCCCCCCCCCKKKKKKKKKKKKKKKKKK",String.Empty);
// x = "YOU SUCCKK"

var y = r.Replace("OMGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGGG!!!!!!!!!!!!!!!",String.Empty);
// y = "OMGG!!"

相关文章

在要实现单例模式的类当中添加如下代码:实例化的时候:frmC...
1、如果制作圆角窗体,窗体先继承DOTNETBAR的:public parti...
根据网上资料,自己很粗略的实现了一个winform搜索提示,但是...
近期在做DSOFramer这个控件,打算自己弄一个自定义控件来封装...
今天玩了一把WMI,查询了一下电脑的硬件信息,感觉很多代码都...
最近在研究WinWordControl这个控件,因为上级要求在系统里,...