我们的客户希望根据无效日期收到2条不同的消息。例如,7/8/14,将是一个"无效的日期格式"其中2/30/2014是"无效日期"。 C#是否有办法通过单独的消息通知用户?日期时间tryparse将两者都标识为错误的日期,只是不确定我是否可以确定错误日期的原因而不将日期拆分为字符串等。
提前致谢
答案 0 :(得分:0)
您可以尝试将它与正则表达式匹配,即"一个或两个数字后跟斜线,后跟一个或两个数字,然后是斜线,接着是四个数字"它会清除"无效的日期格式"。
我的RegEx技能很生疏,但这应确保格式正确:
\d{1,2}/\d{1,2}/\d{4}
如果匹配,则为"有效格式"
static class DateParser
{
private static readonly Regex DateRegex = new Regex(@"\d{1,2}/\d{1,2}/\d{4}");
public static DateTime Parse(string value)
{
if (!DateRegex.IsMatch(value)) throw new DateFormatException();
return DateTime.Parse(value);
}
}
internal class DateFormatException : Exception
{
}
WPF与验证有什么关系?