正则表达式注释尽管正确但仍然失败

时间:2017-01-12 21:05:30

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

在我的模型中,我有以下内容:

[Required(ErrorMessage = "First name is required.")]
[Display(Name = "First Name")]
[MaxLength(50)]
[RegularExpression(@"/^[A-z]+$/", ErrorMessage = "Only alphabet characters are allowed.")]
public string FirstName { get; set; }

在形式上,无论我放在那里,它都没有通过检查。我希望它只是确保只有字母,没有数字或特殊字符。

这不是重复的,因为引用的帖子与数据注释无关。它们是两种不同的背景。

1 个答案:

答案 0 :(得分:2)

您需要删除正则表达式分隔符(在.NET正则表达式中未使用,因此被视为文字斜杠)并将A-z替换为A-Za-z(请参阅Why is this regex allowing a caret?)。

使用

@"^[A-Za-z]+$"