怎样把12-14,16,18,19-21 转换成12,13,14,16,18,19,20,21?
解决方案 »
- 想搭一discuz的论坛,找个好点的空间,百度一下,一大堆一大堆的推广广告,真能忽悠,求达人给写意见
- PostBackUrl='userDetail.aspx?id=<%# Eval("ID") %>' 为什么不能访问
- 谁有没有比较完美的跨域写Cookie的解决方案
- 一个简单的winform开发的问题
- 如何对ascx用户控件的进行继承的问题!
- 大家给我一段,把数字转成大写的函数要(C#)
- 请saucer(思归)和各位看看原因
- 根据文件路径和文件名字,实现上传。
- EF包含外键表查询的问题,求助大神!!
- treeview的初级问题(解决立刻给分),关于节点的OnSelectedIndexChanged事件?
- <%# 为什么javascript在传值的时候c:\inetpub\wwwroot\Gogo\Images会变成c:inetpubwwwrootGogoImages 谢谢
- 如何该变从sqlserver读出的Image类型的长度和宽度?
字符.replace(/-/g,",");
using System.Text.RegularExpressions;
string str = "";
str = Regex.Replace(str,@"[-]",",");
aaa = aaa.Replace("-","");//注意,后面的两个""中间没有任何东西,嘿嘿~~
{
string strResult = string.Empty; string[] strTmp = strNum.Split("-".ToCharArray());
if (strTmp.Length == 1)
strResult = strNum + ",";
else
{
for (int i = Convert.ToInt32(strTmp[0]); i <= Convert.ToInt32(strTmp[1]); i++)
{
strResult += i.ToString() + ",";
}
}
return strResult;
}
调用: SplitNum("13-16") 返回 13,14,15,16,
SplitNum("13") 返回13
{
if(input.IndexOf('-') < 0)
return input;
string[] firststep = input.Split('-');
int start,end;
string result = firststep[0], tempstr;
for (int i = 1; i < firststep.Length; i++)
{
string[] s;
if (firststep[i - 1].IndexOf(',') > 0)
{
s = firststep[i - 1].Split(',');
start = Convert.ToInt32(s[s.Length - 1]);
}
else
{
start = Convert.ToInt32(firststep[i - 1]);
} if (firststep[i].IndexOf(',') > 0)
{
s = firststep[i].Split(',');
end = Convert.ToInt32(s[0]);
tempstr = firststep[i].Remove(0, s[0].Length);
}
else
{
end = Convert.ToInt32(firststep[i]);
tempstr = "";
}
for (++start; start <= end; start++)
{
result += "," + start.ToString();
}
result += tempstr;
}
return result;
}
笨方法
getnum("1,2,3-4,5,6")返回"1,2,3,4,5,6"
期待好的方法!