fix zipcode

This commit is contained in:
Looly 2020-12-02 02:33:45 +08:00
parent ba2a8156d5
commit c0f1afd709
3 changed files with 29 additions and 2 deletions

View File

@ -40,6 +40,7 @@
* 【core 】 修复ZipUtil判断压缩文件是否位于压缩目录内的逻辑有误的问题issue#1251@Github
* 【json 】 修复JSONObject.accumulate问题
* 【core 】 修复部分xlsx文件sax方式解析空指针问题issue#1265@Github
* 【core 】 修复PatternPool中邮编的正则issue#1274@Github
-------------------------------------------------------------------------------------------------------------

View File

@ -63,9 +63,9 @@ public class PatternPool {
public final static Pattern CITIZEN_ID = Pattern.compile("[1-9]\\d{5}[1-2]\\d{3}((0\\d)|(1[0-2]))(([012]\\d)|3[0-1])\\d{3}(\\d|X|x)");
/**
* 邮编
* 邮编兼容港澳台
*/
public final static Pattern ZIP_CODE = Pattern.compile("[1-9]\\d{5}(?!\\d)");
public final static Pattern ZIP_CODE = Pattern.compile("^(0[1-7]|1[0-356]|2[0-7]|3[0-6]|4[0-7]|5[0-7]|6[0-7]|7[0-5]|8[0-9]|9[0-8])\\d{4}|99907[78]$");
/**
* 生日
*/

View File

@ -161,4 +161,30 @@ public class ValidatorTest {
Assert.assertTrue(Validator.isUUID(IdUtil.randomUUID().toUpperCase()));
Assert.assertTrue(Validator.isUUID(IdUtil.fastSimpleUUID().toUpperCase()));
}
@Test
public void isZipCodeTest(){
//
boolean zipCode = Validator.isZipCode("999077");
Assert.assertTrue(zipCode);
//
zipCode = Validator.isZipCode("999078");
Assert.assertTrue(zipCode);
// 2020年3月起改用6位邮编3+3
zipCode = Validator.isZipCode("822001");
Assert.assertTrue(zipCode);
// 内蒙
zipCode = Validator.isZipCode("016063");
Assert.assertTrue(zipCode);
// 山西
zipCode = Validator.isZipCode("045246");
Assert.assertTrue(zipCode);
// 河北
zipCode = Validator.isZipCode("066502");
Assert.assertTrue(zipCode);
// 北京
zipCode = Validator.isZipCode("102629");
Assert.assertTrue(zipCode);
}
}