Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何匹配';使用正则表达式是7个数字还是9个数字?_Javascript_Regex_Function_Validation_Passwords - Fatal编程技术网

Javascript 如何匹配';使用正则表达式是7个数字还是9个数字?

Javascript 如何匹配';使用正则表达式是7个数字还是9个数字?,javascript,regex,function,validation,passwords,Javascript,Regex,Function,Validation,Passwords,现行代码 var codePattern = /^\d{7,9}$/; 基本上我想要: 1-6位数字=否 7位=是 8位=否 9位数=是 较大值=10位数=编号 谢谢您可以这样使用它: var codePattern = /^\d{7}(?:\d{2})?$/; 它在开始时基本上匹配7位数字,然后在结束时后跟2位可选数字(?:\d{2}),从而使它能够匹配7位数字或9位数字 var codePattern = /^\d{7}(?:\d{2})?$/; 它基本上在开始时匹配7位数字,然后在结

现行代码

var codePattern = /^\d{7,9}$/;
基本上我想要:

1-6位数字=否

7位=是 8位=否

9位数=是

较大值=10位数=编号


谢谢

您可以这样使用它:

var codePattern = /^\d{7}(?:\d{2})?$/;

它在开始时基本上匹配7位数字,然后在结束时后跟2位可选数字
(?:\d{2})
,从而使它能够
匹配7位数字或9位数字

var codePattern = /^\d{7}(?:\d{2})?$/;

它基本上在开始时匹配7位数字,然后在结束时后跟2位可选数字
(?:\d{2})
,从而使它能够
匹配7位数字或9位数字

有很多选项。比如说

/^\d{7}|\d{9}$/
/^\d{7}\d{2}?$/

有很多选择。比如说

/^\d{7}|\d{9}$/
/^\d{7}\d{2}?$/
应该这样做:

 /^(\d{7}|\d{9})$/
应该这样做:

 /^(\d{7}|\d{9})$/

使用正则表达式模式
/^\d{7}(\d\d)$/
/^[0-9]{7}[0-9]{2}?$/

使用正则表达式模式
/^\d{7}(\d\d)$/
/^[0-9]{7}[0-9]{2}$/

不可以<代码>/^\d{7}(?:\d{2})$/.test('12345678')
返回False只是好奇,为什么是非捕获组?@Ejay:是的,不需要非捕获组。只是一个我正在开发的网站。他们只希望使用长度为7或9的验证代码。不知道为什么。好吧,抱歉,我刚刚又试了一次,成功了!:)谢谢,不可能<代码>/^\d{7}(?:\d{2})$/.test('12345678')返回False只是好奇,为什么是非捕获组?@Ejay:是的,不需要非捕获组。只是一个我正在开发的网站。他们只希望使用长度为7或9的验证代码。不知道为什么。好吧,抱歉,我刚刚又试了一次,成功了!:)感谢第二个失败的是7位字符串。第二个失败的是7位字符串。