console
const validatePostCode = (postCode,zoneType) => {
//var A = /^\s*(?!(G\s*Y.*|E\s*1|N\s*1|N\s*W\s*1|S\s*E\s*1|S\s*E\s*1\s*1|W\s*2|E\s*C\s*1\s*[AMNRVY]|E\s*C\s*2\s*[AMNPRVY]|E\s*C\s*3\s*[AMNPRV]|E\s*C\s*4\s*[AMNRVY]|S\s*W\s*1\s*[AEHPVWY]|W\s*1\s*[ABCDFGHJKSTUW]|W\s*C\s*1\s*[ABEHNRVX]|W\s*C\s*2\s*[ABEHNR]|A\s*B\s*1\s*[0-6]|A\s*B\s*2\s*[1-5]|A\s*B\s*3\s*[0-9]|A\s*B\s*4\s*[1-5]|A\s*B\s*5\s*[1-6]|A\s*B\s*9\s*9|F\s*K\s*1\s*[489]|F\s*K\s*2\s*[01]|P\s*A\s*2\s*[0-9]|P\s*A\s*3\s*[0-8]|P\s*A\s*4\s*[1-9]|P\s*A\s*6\s*[0-9]|P\s*A\s*7\s*[0-8]|P\s*A\s*8\s*0|P\s*H\s*[6789]|P\s*H\s*1\s*[0-79]|P\s*H\s*2\s*[0-6]|P\s*H\s*3\s*[0-9]|P\s*H\s*4\s*[0-49]|P\s*H\s*5\s*0|I\s*V\s*[1-9]|I\s*V\s*1\s*[0-9]|I\s*V\s*2\s*[0-8]|I\s*V\s*3\s*[0-26]|I\s*V\s*4\s*[0-9]|I\s*V\s*5\s*[1-6]|I\s*V\s*6\s*3|I\s*M\s*[0-9A-Z ]*|K\s*W\s*[1-9]|K\s*W\s*1\s*[0-7]|K\s*Y\s*9|K\s*Y\s*1\s*[0456]|K\s*A\s*2\s*[78]|P\s*O\s*3\s*[0-9]|P\s*O\s*4\s*[01]|E\s*H\s*3\s*[5-9]|E\s*H\s*4\s*[023456]|T\s*D\s*[1-8]|T\s*D\s*1\s*[01234]|D\s*D\s*[6789]|D\s*D\s*1\s*[01]|Z\s*E\s*[123]|H\s*S\s*[1-9]|T\s*R\s*2\s*[1-5])\s*[0-9]\s*[A-Z]\s*[A-Z])\s*/i;
//var B = /^\s*(E\s*1|N\s*1|N\s*W\s*1|S\s*E\s*1|S\s*E\s*1\s*1|W\s*2|E\s*C\s*1\s*[AMNRVY]|E\s*C\s*2\s*[AMNPRVY]|E\s*C\s*3\s*[AMNPRV]|E\s*C\s*4\s*[AMNRVY]|S\s*W\s*1\s*[AEHPVWY]|W\s*1\s*[ABCDFGHJKSTUW]|W\s*C\s*1\s*[ABEHNRVX]|W\s*C\s*2\s*[ABEHNR])\s*[0-9]\s*[A-Z]\s*[A-Z]\s*/i;
//var C = /^\s*(A\s*B\s*1\s*[0-6]|A\s*B\s*2\s*[1-5]|A\s*B\s*3\s*[0-9]|A\s*B\s*4\s*[1-5]|A\s*B\s*5\s*[1-6]|A\s*B\s*9\s*9|F\s*K\s*1\s*[489]|F\s*K\s*2\s*[01]|P\s*A\s*2\s*[0-9]|P\s*A\s*3\s*[0-8]|P\s*A\s*4\s*[1-9]|P\s*A\s*6\s*[0-9]|P\s*A\s*7\s*[0-8]|P\s*A\s*8\s*0|P\s*H\s*[6789]|P\s*H\s*1\s*[0-79]|P\s*H\s*2\s*[0-6]|P\s*H\s*3\s*[0-9]|P\s*H\s*4\s*[0-49]|P\s*H\s*5\s*0|I\s*V\s*[1-9]|I\s*V\s*1\s*[0-9]|I\s*V\s*2\s*[0-8]|I\s*V\s*3\s*[0-26]|I\s*V\s*4\s*[0-9]|I\s*V\s*5\s*[1-6]|I\s*V\s*6\s*3|I\s*M\s*[0-9A-Z ]*|K\s*W\s*[1-9]|K\s*W\s*1\s*[0-7]|K\s*Y\s*9|K\s*Y\s*1\s*[0456]|K\s*A\s*2\s*[78]|P\s*O\s*3\s*[0-9]|P\s*O\s*4\s*[01]|E\s*H\s*3\s*[5-9]|E\s*H\s*4\s*[023456]|T\s*D\s*[1-8]|T\s*D\s*1\s*[01234]|D\s*D\s*[6789]|D\s*D\s*1\s*[01]|Z\s*E\s*[123]|H\s*S\s*[1-9]|T\s*R\s*2\s*[1-5])\s*[0-9]\s*[A-Z]\s*[A-Z]\s*/i;
var C= /^((GY.*|JE.*|BF1)[0-9][A-Z][A-Z]|BFPO|HA46DQ|D18CX65|E41TR26|D24HK7D).*/;
var B= /^(FK1[789]|FK2[012]|KA2[78]|PA[234567][0-9]|PA80|PH1[5-9]|PH[234][0-9]|PH50|AB3[678]|AB5[456]|ZE.*|HS.*|IV.*|KW.*|BT.*|IM.*)[0-9][A-Z][A-Z]/;
var A= /^(?!(BFPO|HA46DQ|D18CX65|E41TR26|D24HK7D|(FK1[789]|FK2[012]|KA2[78]|PA[234567][0-9]|PA80|PH1[5-9]|PH[234][0-9]|PH50|AB3[678]|AB5[456]|ZE.*|HS.*|IV.*|KW.*|BT.*|IM.*|GY.*|JE.*|BF1)[0-9][A-Z][A-Z]))/;
if(zoneType == 'A'){
return postCode.match(A);
}else if(zoneType == 'B'){
return postCode.match(B);
}else if(zoneType == 'C'){
return postCode.match(C);
}else {
return false;
}
};
const validate = () => {
const $result = $('#result');
const postCode = $('#postcode').val();
$result.text('');
var str = '';
if (validatePostCode(postCode,'A')) {
str+='<br>'+postCode + ' 是A区邮编';
}
if (validatePostCode(postCode,'B')) {
str+='<br>'+postCode + ' 是B区邮编';
}
if (validatePostCode(postCode,'C')) {
str+='<br>'+postCode + ' 是C区邮编';
}
if(str != ''){
$result.html(str);
$result.css('color', 'green');
}else{
$result.text('不是ABC区邮编');
$result.css('color', 'red');
}
return false;
}
$('#test').on('click', validate);
请输入邮编
<input type="text" id="postcode" name="postcode"/>
<input type="button" id="test" value= "检测"/>
<br>
<h2 id="result"></h2>