Asp.net 用于验证MVC模型属性的正则表达式

Asp.net 用于验证MVC模型属性的正则表达式,asp.net,asp.net-mvc,entity-framework,validation,ef-database-first,Asp.net,Asp.net Mvc,Entity Framework,Validation,Ef Database First,我需要一种方法来验证这些 9个数值+V==>359123404V 或 11仅数值199245781248 我试过下面的代码 [Display(Name = "NIC Number")] [Required] [RegularExpression("[0-9]{11,11}\\d)|([0-9]{9,9}+v")] public string driverNic { get; set; } 奇怪的是,这只验证了13个数字字符输入您案例中正确的正则表达式是(^[0-9]{11,11}$)|(^[

我需要一种方法来验证这些

9个数值+V==>359123404V 或 11仅数值199245781248

我试过下面的代码

[Display(Name = "NIC Number")]
[Required]
[RegularExpression("[0-9]{11,11}\\d)|([0-9]{9,9}+v")]
public string driverNic { get; set; }


奇怪的是,这只验证了13个数字字符输入

您案例中正确的正则表达式是
(^[0-9]{11,11}$)|(^[0-9]{9,9}V$)

有关详细说明,请参阅。 注意,这假设“V”总是大写的


对于一些测试用例,也可以看到这个。

{11,11}似乎不太可能验证12个数值。@ADyson抱歉,我纠正了一个错误:)