用于javascript模式匹配的正则表达式

时间:2011-06-16 21:30:23

标签: javascript regex

我正在寻找一个正则表达式或javascript,当数字不在48-47之间或不在96-105之间或不是110或190或8或13时,它会提醒我。

感谢所有帮助的朋友!!

3 个答案:

答案 0 :(得分:5)

正则表达式不适用于此类特定数字检查。只需执行一些if语句即可将您正在使用的值与要排除的特定值和范围进行比较。

var number = 19;
alert('Number is'+(numberIsValid(number) ? 'valid' : 'not valid'));

    function numberIsValid(number) {
      // test for numeric argument
      if ((number - 0) != number)
        return false;
      // test for specific exclusions
      if (number == 110 || number == 190 || number == 8 || number == 13 || number == 48 || number == 47)
        return false;
      // test for excluded range
      if (number >= 96 && number <= 105)
        return false;
      return true;
    }

答案 1 :(得分:3)

我同意克里斯上面的回应,如果你想看看它会是什么样子,那就太乱了。我真的不建议你使用它。

重新说一下:数字可能不是8,13,47,48,96-105,110

var num = 10;
if (! /^(8|13|47|48|9[6-9]|10[0-5]|110)$/.test(num)) {
    alert(num);
}

答案 2 :(得分:1)

function allowedIntegers(n){
    return !/^([^\d]|8|13|47|48|110|190|96|97|98|99|100|101|102|103|104)$/.test(String(n));
}