字符截取(含有0的)

aiolia911 2007-07-27 05:13:55
数据库中存的是这样的字段
200701,200702,200610等,就是年份和月份

但是我显示的时候想这样显示,2007年1月,2006年10月

就是把01,02的月份中的0去掉...
怎么截取并显示呢?
...全文
188 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
allen_cn 2007-07-27
  • 打赏
  • 举报
回复
晕,终于懂得了大多数中国人的学习方式了
aiolia911 2007-07-27
  • 打赏
  • 举报
回复
假如你已经将字段的值取出并赋值给一个字符串变量
string str = "200701";

string strmonth = str.Substring(4, 2);

int a = int.Parse(strmonth);

Response.Write(a);


正确。。。。
bdbox@qq.com 2007-07-27
  • 打赏
  • 举报
回复
虽然复杂,但提供一种思路吧,试试:
public static void Main()
{
string sourceString = @"200701,200702,200610";
string pattern = @"(\d{4})(\d)(\d)";
string result = System.Text.RegularExpressions.Regex.Replace(sourceString,pattern,new MatchEvaluator(MyClass.calReplace));
WL(result);//输出
}

public static string calReplace(Match result)
{
if (result.Groups[2].Value == "0")
{
return result.Groups[1].Value + result.Groups[3].Value;
}
else
{
return result.Groups[1].Value + result.Groups[2].Value + result.Groups[3].Value;
}
}

-----------------------------------------------
msn:bdbox@hotmail.com
请给我一个与您交流的机会
linruilinrui 2007-07-27
  • 打赏
  • 举报
回复
这样试试:取到"01",判断"01"第一个字符是否等于"0",是的话就取"1"
-过客- 2007-07-27
  • 打赏
  • 举报
回复
try

string test = "200701";
string result = DateTime.ParseExact(test, "yyyyMM", null).ToString("yyyy年M月");
milo4210 2007-07-27
  • 打赏
  • 举报
回复
假如你已经将字段的值取出并赋值给一个字符串变量
string str = "200701";

string strmonth = str.Substring(4, 2);

int a = int.Parse(strmonth);

Response.Write(a);
allen_cn 2007-07-27
  • 打赏
  • 举报
回复
只正常的是使用string 的substring这类函数
allen_cn 2007-07-27
  • 打赏
  • 举报
回复
一个简单的方法
取到 01 转换成 int型 得到 1 ,然后转换成字符型

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧