我试图做排除英国邮政编码验证器,它可以在Regex101中正常工作。但是在浏览器中失败,两个版本的所有结果都是错误的。
var testArray = ["AB01 1AA",
"DD02 2RE",
"DG02 2RE",
"EH02 2RE",
"FK02 2RE",
"G02 2RE",
"HS02 2RE",
"IV02 2RE",
"KA02 2RE",
"KW02 2RE",
"KY02 2RE",
"ML02 2RE",
"PA02 2RE",
"PH02 2RE",
"TD02 2RE",
"ZE02 2RE",
"BT02 2RE",
"GY02 2RE",
"JE02 2RE",
"IM02 2RE",
"im11 2RE",
"im21 2ee",
"ZE022RE",
"BT022RE",
"GY022RE",
"je022re"];
var x = /(AB|DD|DG|EH|FK|G|HS|IV|KA|KW|KY|ML|PA|PH|TD|ZE|BT|GY|JE|IM)[0-9]{2}[ ]?[0-9]([a-zA-Z]{2})/;
var reg = RegExp('(AB|DD|DG|EH|FK|G|HS|IV|KA|KW|KY|ML|PA|PH|TD|ZE|BT|GY|JE|IM)[0-9]{2}[ ]?[0-9]([a-zA-Z]{2})','i');
for(var xx in testArray){ console.log(xx+' '+ reg.test(xx)+' '+x.test(xx));}
我一定在这里缺少明显的东西。
不要for..in
用于数组
for (var i = 0; i < testArray.length; i++) {
console.log(testArray[i] +' '+ reg.test(testArray[i])+' '+ x.test(testArray[i]));
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句