我有这个大梁
^(10-2\01-9):0-5\040(上午上午下午下午)$
并且它验证了这个时间格式:hh:mm AM|am|PM|pm
,例如04:25 pm
,11:20 am
如何使4:25 pm
(在4
之前没有0
)也是有效的?换句话说,让h:mm
成为有效的时间格式,加上hh:mm
,请解释一下,这样我才能理解你在做什么。谢谢!
发布于 2015-09-17 22:58:09
试试这个:
^([1-9]|1[0-2]|0[1-9]):[0-5][0-9]\040(AM|am|PM|pm)$
发布于 2015-09-18 20:52:08
下面是一种用MVC应用程序编写DateTime验证的非正则化方法:
[Required(ErrorMessage = "This value is required!")]
[MyValidateTime]
public string TimeValue { get; set; }
下面是MyValidateTime
代码:
public class MyValidateTime: ValidationAttribute
{
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
DateTime dt;
if (DateTime.TryParseExact((string)value, new[] { "hh:mm tt", "h:mm tt" }, CultureInfo.InvariantCulture, DateTimeStyles.None, out dt))
return ValidationResult.Success;
else
return new ValidationResult("Correct time formats: 01:00 AM or 1:00 AM");
}
}
在这里,允许的时间格式是:
请参阅更多 MSDN page
https://stackoverflow.com/questions/32641198
复制相似问题