!471 身份证工具类,增加对 gang||ao|tai|` 在大陆身份证 的 文档说明; 大陆用户 对 810000、820000、830000 开通的18位身份证 往往比较陌生。

Merge pull request !471 from dazer007/v5-dev
This commit is contained in:
Looly 2021-11-25 09:48:01 +00:00 committed by Gitee
commit 845f910836
2 changed files with 30 additions and 0 deletions

View File

@ -202,6 +202,24 @@ public class IdcardUtil {
* <li>通过上面得知如果余数是2就会在身份证的第18位数字上出现罗马数字的如果余数是10身份证的最后一位号码就是2</li> * <li>通过上面得知如果余数是2就会在身份证的第18位数字上出现罗马数字的如果余数是10身份证的最后一位号码就是2</li>
* </ol> * </ol>
* *
<p>
* <ol>
* <li>香港人在大陆的身份证810000开头同样可以直接获取到 性别出生日期</li>
* <li>81000019980902013X: 文绎循 1998-09-02</li>
* <li>810000201011210153: 辛烨 2010-11-21</li>
* </ol>
* <ol>
* <li>澳门人在大陆的身份证820000开头同样可以直接获取到 性别出生日期</li>
* <li>820000200009100032: 黄敬杰 2000-09-10</li>
* </ol>
* <ol>
* <li>台湾人在大陆的身份证830000开头同样可以直接获取到 性别出生日期</li>
* <li>830000200209060065: 王宜妃 2002-09-06</li>
* <li>830000194609150010: 苏建文 1946-09-14</li>
* <li>83000019810715006X: 刁婉琇 1981-07-15</li>
* </ol>
* </p>
*
* @param idcard 待验证的身份证 * @param idcard 待验证的身份证
* @return 是否有效的18位身份证忽略x的大小写 * @return 是否有效的18位身份证忽略x的大小写
*/ */

View File

@ -103,6 +103,18 @@ public class IdcardUtilTest {
Assert.assertTrue(isValidCard18); Assert.assertTrue(isValidCard18);
isValidCard18 = IdcardUtil.isValidCard18("33010219200403064X"); isValidCard18 = IdcardUtil.isValidCard18("33010219200403064X");
Assert.assertTrue(isValidCard18); Assert.assertTrue(isValidCard18);
// 香港人在大陆身份证
isValidCard18 = IdcardUtil.isValidCard18("81000019980902013X");
Assert.assertTrue(isValidCard18);
// 澳门人在大陆身份证
isValidCard18 = IdcardUtil.isValidCard18("820000200009100032");
Assert.assertTrue(isValidCard18);
// 台湾人在大陆身份证
isValidCard18 = IdcardUtil.isValidCard18("830000200209060065");
Assert.assertTrue(isValidCard18);
} }
@Test @Test