Angularjs 正则表达式验证错误
我使用正则表达式来验证angularjs中的数字。但当数字超过9位时,我的代码显示验证错误。请有人帮助我更正代码,以便可以输入任何数字 我尝试的是:Angularjs 正则表达式验证错误,angularjs,regex,Angularjs,Regex,我使用正则表达式来验证angularjs中的数字。但当数字超过9位时,我的代码显示验证错误。请有人帮助我更正代码,以便可以输入任何数字 我尝试的是: ng-pattern="/^\d{0,9}?$/" 只需删除{0,9}即可?用*来代替 /^\d*$/ {0,9}平均值是0和9之间的任意长度只需将{0,9}量词更改为*。然后删除?——它没有用: ng-pattern="/^\d*$/" 对于十进制值: ng-pattern="/^\d*(\.\d+)?$/" 使用: \d{0,9}=匹配
ng-pattern="/^\d{0,9}?$/"
只需删除{0,9}即可?用*来代替
/^\d*$/
{0,9}平均值是0和9之间的任意长度只需将
{0,9}
量词更改为*
。然后删除?
——它没有用:
ng-pattern="/^\d*$/"
对于十进制值:
ng-pattern="/^\d*(\.\d+)?$/"
使用:
\d{0,9}
=匹配0到9位数字
\d*
=匹配0到N个数字
\d=数字:0或1或2或3或4或5或6或7或8或9我怀疑问题在于理解以下两者之间的区别:
{0,9}
[0-9]
{0,9}
表示“前一项的0到9次重复”,在本例中表示“0到9位”
[0-9]
表示“0到9(包括)范围内的字符”,与\d
相同
尝试:
这意味着“所有数字输入”,不包括空白输入
要允许十进制输入,请转义点并使小数部分为可选:
/^\d+(\.\d+)?$/
这意味着“至少一个数字,可选后跟一个点和至少一个数字”
\d{0,9}?
为什么使用?
here@Tushar因为?谢谢你的帮助。如果我也需要验证小数,我应该添加什么。我以前试过的是ng pattern=“/^\d{0,9}(\.\d{1,9})$/”@anju也允许空白输入?如果我也需要验证小数,您能告诉我应该添加什么吗。我以前试过的是ng pattern=“/^\d{0,9}(\.\d{1,9}”)$/“当使用*
量词时,您不需要?
您能告诉我如果我也需要验证小数,我应该添加什么吗。我以前试过的是ng pattern=“/^\d{0,9}(\.\d{1,9})$/”我相信开放式量词在您的情况下很好:$\d*(\.\d+)$
。这些结果是一个简单的正则表达式。如果我也需要验证小数,你能告诉我应该添加什么吗。我以前试过的是ng pattern=“/^\d{0,9}(\.\d{1,9})?$/”@anju Here:“/^[\d]*[\.]?[\d]*$/”
/^\d+$/
/^\d+(\.\d+)?$/