使用前三个字符检查数字的正则表达式是不起作用的字母表

时间:2014-07-07 12:15:40

标签: javascript regex

$(document).ready(function(){
        $("#mystring").keyup(function(){
            var name= document.getElementById('mystring').value;
            var re = ^[ABC]{3}\\d{14}$;

            if(!re.test(mystring))
            {
                alert("mystringformat invalid");
            }
            else{
                alert("mystringformat valid");
            }       
        }); 
    });

4 个答案:

答案 0 :(得分:1)

这不是正则表达式字面值:

^[ABC]{3}\\d{14}$

在JavaScript中,正则表达式文字包含在/个字符中。

请阅读:https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions

答案 1 :(得分:0)

正则表达式:

/^[a-zA-Z]{3}[0-9]{14}$/

Online example

说明:

  • [a-zA-Z]{3}匹配下面列表中的单个字符,恰好是3次
    • a-z a和z之间范围内的单个字符(区分大小写)
    • A-Z A和Z之间范围内的单个字符(区分大小写)
  • [0-9]{14}匹配下面列表中的单个字符,恰好是14次
    • 0-9 0到9之间范围内的单个字符

<强>使用Javascript:

$("#mystring").keyup(function () {
    var $name = $(this).val();
    if (/^[a-zA-Z]{3}[0-9]{14}/.test($name)) {
        alert("String is valid");
    } else {
        alert("String is invalid");
    }

});

Online example

答案 2 :(得分:0)

正则表达式定义有问题,请尝试:

var re = /^[ABC]{3}\d{14}$/;

答案 3 :(得分:0)

很遗憾,您想查看前三个字符必须为字母数字

如果您的意思是输入字符串,那么您可以尝试这个

var re = /^[ABC]{3}[\d+]{14}/;