正则表达式匹配仅不以零开头的数字

时间:2011-04-14 10:03:37

标签: c# .net regex

我在表单上有一个文本框,我希望用户只能输入数字,第一个数字不能为零。在这种情况下必须采用哪种模式?

3 个答案:

答案 0 :(得分:11)

使用此表达式

string expression = @"^[1-9]\d*$";

对于想要测试表达式的人,请使用以下链接:http://www.rubular.com/r/1JIPP8E1zH

答案 1 :(得分:1)

或者,我建议将其用于本地化,请考虑

 double.Parse(myTextBox.Text, System.Globalization.CultureInfo.CurrentCulture);

作为替代。它根据安装的设置(文化)解析带小数的数字或您喜欢的任何变体。在我的国家,使用小数点分隔符。

答案 2 :(得分:0)

尝试:

/^[1-9][0-9]*$/

你接受的字符串长度是多少?

如果您允许使用空字符串,请尝试使用:

/^([1-9][0-9]*)?$/