我的输入要求最小数值为125.我是regex的新手,并且使用Foundation的Abide进行验证,据我所知,没有特定的混合/最大支持。我希望在模式属性中设置正则表达式。有解决方案吗谢谢!
答案 0 :(得分:8)
全面验证数字值的任何正则表达式都会很强大。我建议只将数字解析为int
,然后检查它。
在Javascript中:
if (parseInt(numberString) >= 125)
{
// number is at least 125.
}
答案 1 :(得分:2)
可能只需要覆盖3位或更多位数。
# ^[0-9]*(?:12[5-9]|1[3-9][0-9]|[2-9][0-9]{2}|[1-9][0-9]{3,})$
^
[0-9]*
(?:
12 [5-9]
|
1 [3-9] [0-9]
|
[2-9] [0-9]{2}
|
[1-9] [0-9]{3,}
)
$
答案 2 :(得分:0)
如果你必须通过Regex进行,你可以试试这个表达式:
([1-9][2-9][5-9])|([2-9][0-9][0-9])|([1-9]\d{3}\d*)
我已经在javascript中对它进行了测试,并且在那里工作正常:
var pattern = /([1-9][2-9][5-9])|([2-9][0-9][0-9])|([1-9]\d{3}\d*)/;
console.log(pattern.test('120')); //false
console.log(pattern.test('125')); // true
console.log(pattern.test('200')); // true
console.log(pattern.test('10000')); // true
console.log(pattern.test('99999')); // true
答案 3 :(得分:0)
根据您要添加125作为最小值的问题,您可以像
一样处理它/([1-9][0-9]{3,}|12[5-9]|1[3-9][0-9]|[2-9][0-9][0-9])/
找到添加到以下链接的测试用例: