我想验证用户输入字符串的数字范围从1300 到 1500。
我试过了Regex regxUsrInput = new Regex(@"^(?:[1-9]|1|3[0-9]|0[0-9]|0[0-9]|1500)$");
..但这并不能验证我预期的方式。
我愿意接受任何建议,包括替代方案。谢谢
如果重要:我的应用程序是用C#编写的Windows 窗体应用程序。用户输入来自标准TextBox Control。
我想验证用户输入字符串的数字范围从1300 到 1500。
我试过了Regex regxUsrInput = new Regex(@"^(?:[1-9]|1|3[0-9]|0[0-9]|0[0-9]|1500)$");
..但这并不能验证我预期的方式。
我愿意接受任何建议,包括替代方案。谢谢
如果重要:我的应用程序是用C#编写的Windows 窗体应用程序。用户输入来自标准TextBox Control。
你为什么要使用Regex
?这个简单的方法怎么样:
int value;
if(int.TryParse(yourTexbox.Text, out value))
{
if(1300 < value && value < 1500)
{
//your code
}
}
注意:不要那样做。但方法如下:
^1([34]\d{2}|500)$
根据Regex_For_Range生成器,您的正则表达式应该是:
^1([34][0-9]{2}|500)$
其他答案指出您不需要正则表达式,但是-为了完整起见-如果您真的想这样做,请尝试以下操作:
@"^1([34][0-9][0-9]|500)$"