我正在使用AngularJS在我的表单中做一些验证。有几个字段我只需要接受数字。范围从一位数到n位数。我打算在AngularJS的ngPattern
属性中使用正则表达式。
我需要使用正则表达式完成以下操作:
- 如果是个位数,就不应该是0。可以是1到9之间的任何值。
- 如果它是一个多位数,从0到9的所有数字都可以用于任何不是所有数字都是0的位置。输入的总值不应为0
我正在努力寻找一个能接受这种模式的正则表达式。使用正则表达式是否可以接受这样的模式?早些时候我在想,至少最后一个数字应该是非零数字,这样像0000这样的条目就不可能了,必须是000x,其中x是从1到9的任何一个数字。但是这种逻辑是有缺陷的,因为它不允许人们输入10的倍数。
如何实施此验证?
2条答案
按热度按时间epfja78i1#
我想,这就是你要找的:
它匹配任何至少包含一个非零数字的数字。
o7jaxewo2#
一个更好的答案是:
这基本上与上面的相同,尽管它也允许01 - 09(当然还有01[##]),这取决于您的应用程序。