RegEx接受小于-50.0或大于80.0的数字
RegEx to accept numbers less then -50.0 or greater than 80.0
我正试图找到一个JavaScript正则表达式来接受小于-50.0或大于80.0的数字。
下面的表达式不起作用:
/^([-][5][0]'.[0]|[-][0-4][0-9]'.[0-9]|[-][0-9]'.[0-9])|([0]'.[0]|[1-9]'.[0-9]|[0-7][0-9]'.[0-9]|[8][0]'.[0])$/
RegEx用于模式匹配,而不是类似的功能。只需将输入解析为数字并比较其值。
function checkValue(input){
var number = parseInt(input);
if (number === NaN) throw new Error('input was not a number') /* error checking */
if (number < -50 || number > 80) return true;
return false;
}
编辑:如果可以的话,您应该尝试在上游进行某种形式的验证。RegEx不适合这样做。请随意发布更多的上下文代码,我们可以在这里看到如何最好地验证。
您可以使用以下正则表达式:
/(?:^|[^.])(-([56]'d|'d{3,})(?:'.'d{1,2})?'b|'b([89]'d|'d{3,})(?:'.'d{1,2})?'b)/gm
RegEx演示
相关文章:
- 正则表达式(JavaScript),用于创建数字必须大于x的数据验证
- Regex允许数字大于0.5
- RegEx接受小于-50.0或大于80.0的数字
- 如果类中的数字大于0,请使用JavaScript更改CSS背景
- 当数组达到大于 x 的数字时,继续新行
- 大于带数字和小数的条件
- javascript变量数字大于数字乘以多少
- javascript测试一个值是否是一个数字和一个大于0的数字
- 多个数字输入,jquery .each 如果 val() 大于,则将类添加到元素
- (Math.random()*x)+y 返回大于 x+y 的数字
- 验证不允许大于数字的文本框
- 为什么 NaN 大于 JavaScript 中的任何数字
- 我如何在Javascript中对大于2^32的数字进行逐位运算
- 如何在Javascript中处理大于2^53的数字
- Don't显示数字大于72
- 有可能对大于2^53的数字正确地进行数学运算吗
- regex等于或大于数字3
- 大于在小于 100 的数字上返回错误值
- 如何验证电话字段仅接受8位数字(不小于和不大于)
- Javascript数字大于数字不能返回正确的结果