MVC 数据注释,用于限制用户不允许仅允许数字和特殊字符



我正在尝试验证用户的输入以仅插入字母数字字符,包括特殊字符,例如 .,_ 空格。

Point 1. the user cant insert only special characters like @@@@@@@ or .........
Point 2. or any numeric numbers like 2222222.

它应该是任何有效的格式,例如。 "hi i am asking a question on stack overflow.this is my 11th attempt. "

尝试了这些表达式,但它不允许我像第 1 点和第 2 点那样限制用户,请帮助。

这是我的代码

[RegularExpression(@"^([a-zA-Z0-9 .&'-]+)$", ErrorMessage = "Invalid User Name")]
        public string UserName { get; set; }
        [Required]
        [StringLength(250, MinimumLength = 5, ErrorMessage = "User Description must have minimum 5 and maximum 250 characters.")]
        [RegularExpression(@"^[^<>!@#%/?*]+$", ErrorMessage = "Invalid User Description")]
        public string Description { get; set; }

您需要在开始时使用负面的展望。

@"^(?![W_]+$)(?!d+$)[a-zA-Z0-9 .&',_-]+$"

演示

  • (?![W_]+$) 否定前瞻断言字符串不会只包含特殊字符。

  • (?!d+$)断言字符串不会只包含数字。

^(?=.*[a-zA-Z])[a-zA-Z0-9,_.&' -]+$

您可以通过lookahead强制实施条件,说明始终需要letter

最新更新