由0和1组成的字符串,连续是“1”的算为一单元,比如下面字串例子里共有四个单元,分别为“1111111”、“111”、“111111”和“111111111111111111”。需解决的问题是:怎样编程计算该字串中的单元数量,并标注每个单元的起止位置(用数组表示,如第一个单元的起止位置是2和8,实际问题“0”和“1”的排列是没有规律的。)字串例子:
00111111100000000001110000000000011111100011111111111111111100000000000
00111111100000000001110000000000011111100011111111111111111100000000000
解决方案 »
- winfrom 怎么更新用户控件里DataGridView里的数据?
- 一个数组越界问题,没看懂
- ClickOnce多个Server部署同一应用程序的问题
- [急]像QQ这样的好友头像是转换成ICO才能在托盘中闪烁的吧?
- visual studio 2005 C# 新建项目 类库
- 请问怎样控制cs软件在不同分辨率下面的显示,各位大虾是怎么控制的,一般要考虑什么呢?
- window边框设置问题
- 怎么使用 ILDASM 转换DLL文件?有.NET网站上的解释但我看的不是太明白,请高手指点下
- 请教一个问题,怎样把一个知道确切地址的图片下载到本地啊
- VS.net 能实现java applet这种程序嘛?
- winform如何保存在窗体(自定义控件)上的画图
- VS2003开发的软件 可以在3.5组件下使用吗
{
Regex R = new Regex("1+");
MatchCollection M = R.Matches("00111111100000000001110000000000011111100011111111111111111100000000000");
StringBuilder S = new StringBuilder();
foreach (Match m in M)
{
S.Append(string.Format("开始位置:{0},结束位置:{1}\r\n字符串:{2}\r\n",m.Index.ToString(),
(m.Index+m.Length).ToString(),m.Value ));
}
MessageBox.Show(S.ToString());
}
谢谢高手alifriend!程序中只有一点小问题,把foreach中的(m.Index+m.Length).ToString()改成((m.Index+m.Length)-1).ToString()就完全对了。再次感谢!