如何将空字符串中的所有不同符号与MVC中的RegularExpression属性进行匹配

时间:2013-12-30 20:57:47

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

我有一个奇怪的问题 - 我尝试在我的登录页面中匹配关于我的UserName TextBox的所有可能符号,当当前框为空时,此属性必须抛出ErrorMessage。我尝试使用[^.+$],但这个正则表达式只匹配了一个符号,之后我尝试使用^[.+]$并且匹配字面意义上的字符“。” (点)。我尝试了许多其他案例和正则表达式,但该属性没有给我想要的结果。

3 个答案:

答案 0 :(得分:2)

如果您想检查文本框中是否有值,请使用[Required]属性。

[Required(ErrorMessage = "Your error message when the textbox is empty")]
public string YourProperty { get; set; }

答案 1 :(得分:1)

如果您只想检查输入是否为空,则Efrain的答案是最好的方法。

如果由于某种原因你想使用RegEx,下面会这样做。

[RegularExpression("^(?!\s*$).+", ErrorMessage = "Invalid User Name")]
public string UserName { get; set; }

答案 2 :(得分:1)

您只需要删除正则表达式中的方括号:

^.+$


[RegularExpression("^.+$", ErrorMessage = "Empty username")]
public string UserName { get; set; }