javascript中用于验证的正则表达式1-10

问题描述

| 1-10和1-5范围内的数字的正则表达式是什么?请帮助这个陷入困境的灵魂。     

解决方法

        您可以使用javascript中的简单数字检查来实现这一点:
// Convert input to integer just to be sure
mynum = parseInt(mynum,10);

// Check number-range
if(mynum >= 1 && mynum <=10)
and
if(mynum >= 1 && mynum <=5)
如果您真的想使用正则表达式:
/^([1-9]|10)$/
and
/^[1-5]$/
更新: 修复了第一个正则表达式以正确匹配字符串边界 在第一个示例中添加了parseInt以确保正确的数字检查     ,        这不是正则表达式的好用法。 使用简单条件:
if (x > 0 && x < 6) {
  // x is 1 - 5
}

if (x > 0 && x < 10) {
  // x is 1 - 10
}
    ,        对于1-5,您只需要将其封装为字符类:
  /^[1-5]$/
对于1到10,您只需要一个其他选择:
  /^([1-9]|10)$/
    ,        您是否有理由要使用正则表达式?
/([1-9]|10)/
    ,        使用数字比较。以下数字扩展名可以检查数字是否在2个值之间:
Number.prototype.between = 
  function(lower,upper,includeBoundaries){
    lower = Number(lower);
    upper = Number(upper);
    noCando = isNaN(lower) || 
              isNaN(upper) || 
              lower>=upper;
    if ( noCando ) {
      throw \'wrong arguments or out of range\';
    }
    return includeBoundaries
           ? this >= lower && this <= upper
           : this > lower && this < upper
};
// usage:
(12).between(1,12); /=> false
(12).between(1,12,true); /=> true
(12).between(0,15,true); /=> true
(0).between(-5,1); //=> true
该函数将参数转换为Number,因为0可以在javascript中评估为布尔值,以便能够检查参数是否为实数值,并能够检查是否lower不大于/等于upper。在这些情况下,将引发错误。
includeBoundaries
参数还会检查Number是否等于lower或upper,如果未提供,则该函数返回一个真实的“ between”检查。     ,        答案是
/^([1-9]|10)$/
    ,        1-10可以是
/^([1-9]|10)$/
而对于1-5
/^[1-5]$/
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...