MVC中的正则表达式验证失败

时间:2016-02-03 14:29:26

标签: c# regex asp.net-mvc data-annotations

我在MVC中使用DataAnnotations来验证PAN卡号。如果我在https://regex101.com/上在线检查我的表达,它会正确执行。但是当我在我的应用程序中尝试它时,它会显示错误消息,如下图所示。

enter image description here

我不明白为什么会失败。我已经使用以下代码在模型中实现它。那么我该如何实现呢?

[DisplayName("PAN Number")]
[Required(ErrorMessage = "* Please Enter PAN No.")]
[RegularExpression(@"/[A-Z]{5}\d{4}[A-Z]{1}/", ErrorMessage = "* Invalid PAN Number")]
public string US_PAN { get; set; }

1 个答案:

答案 0 :(得分:0)

.NET中的正则表达式不需要包含在//对中。

regex101默认使用类似于php的正则表达式 - 这就是为什么它需要用//封装正则表达式。

所以你的属性应该只是

[RegularExpression(@"[A-Z]{5}\d{4}[A-Z]{1}", ErrorMessage = "* Invalid PAN Number")]