C# 如何判断一个字符串是不是日期型数据?
展开全部
string date = "2001-1-5";
DateTime dt;
if (DateTime.TryParse(date, out dt))
{
Console.WriteLine(dt);
}
else
{
throw new Exception("不是正确的日期格式类型!");
}
正则可真是没有你用try来的效率高,而且正则只能用来判断指定的字符串是否符合一种格式规范,而日期还需要判断闰年,闰月等等非常复杂。所以,对于转换日期,正则表达式是不适用的。
DateTime dt;
if (DateTime.TryParse(date, out dt))
{
Console.WriteLine(dt);
}
else
{
throw new Exception("不是正确的日期格式类型!");
}
正则可真是没有你用try来的效率高,而且正则只能用来判断指定的字符串是否符合一种格式规范,而日期还需要判断闰年,闰月等等非常复杂。所以,对于转换日期,正则表达式是不适用的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
regex
reg
=
new
regex(@"^\d+\.\d+$");
if
(reg.ismatch(str))
messagebox.show("输入的是小数");
以上匹配,只有包含小数点,且前面后面都只包含数字的,才会认定为小数。
你的判断没考虑非数字。
reg
=
new
regex(@"^\d+\.\d+$");
if
(reg.ismatch(str))
messagebox.show("输入的是小数");
以上匹配,只有包含小数点,且前面后面都只包含数字的,才会认定为小数。
你的判断没考虑非数字。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的日期字符串发一下,好给你写正则表达式!
using System.Text.RegularExpressions;
Regex r;
r = new Regex("正则表达式");
Match m = r.Match("字符串");
Console.WriteLine(m);
字符串正确,则m输出,错误则m为空!
不过楼上的人说的也很有道理,正则不用也罢!
using System.Text.RegularExpressions;
Regex r;
r = new Regex("正则表达式");
Match m = r.Match("字符串");
Console.WriteLine(m);
字符串正确,则m输出,错误则m为空!
不过楼上的人说的也很有道理,正则不用也罢!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
别用try和转换,用正则。节约资源,提高效率是王道
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public bool IsDate(string date)
{
try
{
DateTime.Parse(date);
return true;
}
catch
{
return false;
}
}
最简单的办法
{
try
{
DateTime.Parse(date);
return true;
}
catch
{
return false;
}
}
最简单的办法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询