土问一个字符串的问题,在线等
有这样一个string:"522-528",如何把它拆成"522","523","524"..."528"七个string?
类似的有"613-683","134-158"等等.
问题点数:50、回复次数:15Top
1 楼ffansky(ffansky)回复于 2005-08-03 08:52:00 得分 5
str1 = str.split(0, 3);
str2 = str.split(4, 3);Top
2 楼zzpy(左岸)回复于 2005-08-03 08:54:57 得分 0
不是要拆成两个.这个字符串的前3位和末3位是两个整数,要列举出来这两个整数之间的所有数.Top
3 楼ffansky(ffansky)回复于 2005-08-03 08:55:56 得分 0
说错了
str1 = str.SubString(0, 3);
str2 = str.SubString(4, 3);
str3 = str.SubString(8, 3);Top
4 楼ffansky(ffansky)回复于 2005-08-03 08:58:14 得分 0
都是三位的吗Top
5 楼3tzjq(永不言弃)回复于 2005-08-03 09:01:18 得分 35
string flag = "522-528";
string[] split = flag.Split('-');
int v1 = Convert.ToInt32(split[0]);
int v2 = Convert.ToInt32(split[1]);
int gap = v2 - v1;
int[] values = new int[gap];
for(int i = 0; i < gap; i++)
{
values[i] = v1 + i;//得到间隔数
}Top
6 楼justin_chang(加油吧!)回复于 2005-08-03 09:02:18 得分 10
string str="522-528-123-456-789-256""
string[] cArray;
cArray=a.Split(',');
foreach(string i in cArray)
{
Response.Write(i); //cArray[0]="522",cArray[1]="528",......cArray[5]="256"
Response.Write("<br>");
}Top
7 楼zzpy(左岸)回复于 2005-08-03 09:02:31 得分 0
汗,可能我没说明白,字符串的length都是7,"522-528",能取出来的只有"522"和"528",其实我是想知道怎么把"522","528"这两个string类型变成int,然后就能列举出来这两个int之间所有的整数了.Top
8 楼3tzjq(永不言弃)回复于 2005-08-03 09:04:52 得分 0
values[i] = v1 + i;//得到间隔数
应改为:
values[i] = v1 + i + 1;//得到间隔数
flag 可以任何有效间隔字符串
Top
9 楼qsoo(求 索)回复于 2005-08-03 09:04:56 得分 0
先用substring取前面的数523 然后取后面的数528
接着for循环 然后取出所有的数
将"528"变成整型的方法Convert.ToInt32("528")Top
10 楼liuyemao_caoshan(品轩)回复于 2005-08-03 09:06:19 得分 0
3tzjq(永不言弃) 的是正解Top
11 楼abiho(迷路的打工者(只有不会做的程序员,没有不讲道理的客户))回复于 2005-08-03 09:06:26 得分 0
3tzjq(永不言弃) 符合要求Top
12 楼xwdd129(高手就是:不出手)回复于 2005-08-03 09:06:29 得分 0
先拆分成两个字符串,然后转换成两个整数,再循环加1取出它们之间的数不就行了Top
13 楼ffansky(ffansky)回复于 2005-08-03 09:08:05 得分 0
int n1 = Convert.ToInt32(str.SubString(0, 3));
int n2 = Convert.ToInt32(str.SubString(4, 3));
for(i = n1; i <= n2; i++)
{
Console.WriteLine ("{0}",i);
}
Top
14 楼justin_chang(加油吧!)回复于 2005-08-03 09:08:20 得分 0
抱歉,刚才理解错了意思
string str="522-528";
string[] cArray;
ArrayList cArrayList=new ArrayList();
cArray=str.Split('-');
int iSTR=Convert.ToInt32(cArray[0]);
int iEND=Convert.ToInt32(cArray[1]);
for(int i=iSTR;i<=iEND;i++)
{
cArrayList.Add(iSTR);
Response.Write(i); //cArray[0]="522",cArray[1]="528",......cArray[5]="256"
Response.Write("<br>");
}
Top
15 楼zzpy(左岸)回复于 2005-08-03 09:59:07 得分 0
恩,忘了Convert.ToInt32,土了~谢各位Top




