我有一个日期字段,格式为“dd-M-y”,例如2013年1月1日。首先,我想检查必须为“dd-M-y”的格式,其次,日期不应该是过去,但可以是今天和之后。
我该怎么做?我想使用正则表达式,但我不知道它是一个合适的表达式。
答案 0 :(得分:2)
您应该使用DateTime.TryParseExact
而不是使用Regex来验证您的DateTime
string testDate = "01-Jan-2013";
DateTime temp;
if (DateTime.TryParseExact(testDate,
"dd-MMM-yyyy",
CultureInfo.InvariantCulture,
DateTimeStyles.None,
out temp) &&
(temp > DateTime.Today))
{
//Valid date and greater than today
}
else
{
//Invalid date or less than today
}
答案 1 :(得分:0)
我认为你应该绑定用户以正确的格式填写日期,而不是检查它......
本案例中的最佳解决方案是MaskEditExtender