使输入字段使用正则表达式验证数字范围和单个字符

时间:2018-02-28 06:58:54

标签: c# regex asp.net-mvc

这是一个常见问题。但我没有得到我需要的答案。我看了MVC Validation make RegularExpression numeric only on string field(在众多中)作为参考,但我还没到那里。

我有一个绑定到MVC属性的html5输入字段。我想使用[RegularExpression()]属性,但我没有得到我需要的输出。我需要输入 取以下内容:

07 %字符之间的单个数字

我尝试了以下内容:

[RegularExpression("^[0-7][%]")]

我哪里错了?

1 个答案:

答案 0 :(得分:1)

如果您想使用范围从0到7.(一次只有一位数字),请使用[0-7],使用使用{{1 }}。要连接两个要求(For或condition),请在两个方括号之间使用[%]

你的正则表达式看起来像这样

|

[RegularExpression("^[0-7]|[%]")] 在正则表达式的开头,建议您的字符串应以数字开头。

@Stephen在评论中提到的

^声明您的$必须出现在字符串或表达式的末尾。

现在取决于你,如果你想要字符串应该是D%格式,其中D代表数字,%然后在开头使用^,在结尾使用$正则表达式即可。例如5%

如果不是这种情况,那么您可以从正则表达式中删除^和$ ,例如%