检查包含至少一个或多个数字并包含字符的字段

时间:2011-06-10 10:59:17

标签: javascript jquery regex validation

我正在制作一个将与jQuery一起提交的联系表单,我只能进行一次简单的验证。

我需要验证一个必须至少有x个整数的字段。

我该怎么做?

p.s:请不要建议验证插件。

谢谢,

编辑:这是我尝试过的,但我猜错了。

var numbercheck = /^(\w\d{7,14})?$/;

这是jsdiffle:

http://jsfiddle.net/4WqY9/

4 个答案:

答案 0 :(得分:2)

使用regex提供您在现场可以承受的数字范围

喜欢\d{5,10} // Here 5 -10 is the range of numbers

function testContact(contact){
 contact = contact.replace(/[a-z]*/g,"");
 return (contact == contact.match(/\d{5,10}/))?true:false;
}

答案 1 :(得分:1)

要使用正则表达式匹配多个整数,您需要以下内容:

^((\d*)\s*)*$

答案 2 :(得分:1)

我会写一个能完成这项工作的小功能。请注意,如果inputText中有任何非int元素,则此函数将返回false: -

function HasRequiredIntegers(inputText, requiredIntegers) {
    var elems = inputText.split(/\s+/);
    var intCount = 0;
    var nonIntCount = 0;

    for (i = 0; i < elems.length; i++) {
        if (((parseFloat(elems[i]) == parseInt(elems[i])) && !isNaN(elems[i]))) {
            intCount++;
        }
        else {
            nonIntCount++;
        }
    }

    return (intCount >= requiredIntegers && nonIntCount == 0);
}

答案 3 :(得分:1)

试试这个

function hasUpTo5(strin){
        if( string.replace(/[^0-9]/g, '').length <= 5){
            return true
        }else{
            return false;
        }
    }

    alert( hasUpTo5("fhsfbgurb3utn55nun44") );