ASP.NET MVC数据注释正则表达式

时间:2015-12-23 16:57:32

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

我无法让正则表达式工作

    [Required]
    [Display(Name = "Challonge URL")]
    [RegularExpression(@"http://challonge.com/[a-zA-Z0-9]{1-20}", ErrorMessage = "Invalid challonge URL")]
    public string Challonge_URL { get; set; }

输入http://challonge.com/56h9ezkf应该是无效的,正则表达式有问题吗?

1 个答案:

答案 0 :(得分:0)

是的,有几件事......

  • 您需要使用/转义.\,因为斜杠和点表示正则表达式中的内容并且您希望按字面意思匹配它们
  • 它是{1,20},而不是{1-20}
  • 您应该在开头添加^,在结尾添加$,以便它与整个字符串匹配;否则,URL开头或结尾的垃圾将被视为有效

^http:\/\/challonge\.com\/[a-zA-Z0-9]{1,20}$