正则表达式日期和时间
本文关键字:时间 日期 正则表达式 | 更新日期: 2023-09-27 18:20:14
大家好,我有以下快速验证
[Required]
[RegularExpression("{0:d/M/yyyy HH:mm:ss}" ,
ErrorMessage = "Wrong Syntax")]
public string Posted { get; set; }`
但它不允许以下作为日期和时间示例显示的输入:2011年12月12日00:00:00(我不想要这些确切的数字,日期和时间应该允许日期和时间标准逻辑允许的任何数字)
即使我输入了正确的代码,我也会收到错误消息"语法错误"。问题出在哪里。任何帮助都将不胜感激谢谢你这么多
这是因为RegularExpressionAttribute
需要Regex模式,而您提供的是.NET字符串格式模式(MSDN:RegularExpressionAttribute class)。
对于基本格式验证,您需要使用以下内容:
[RegularExpression(@"'d{2,2}/'d{2,2}/'d{4,4} 'd{2,2}:'d{2,2}:'d{2,2}")]
将RegularExpression
属性中的字符串替换为真正的正则表达式。从regex的库站点尝试其中一个:
http://regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5&AspxAutoDetectCookieSupport=1
试试第一个。
有关MVC中客户端和服务器验证(使用类似TextBoxFor的东西)的完整指南,请参阅此处的答案:在mvc 中验证MM/dd/YYYY格式的日期