上期分享了身份证号码中提取出生日期的方法。
http://toutiao.com/i6326289055000560130/
本期再介绍一下在身份证号码中识别获取男女性别的方法。
根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定。公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。 居民身份证是国家法定的证明公民个人身份的有效证件。
在第二代身份证号码中,三位数字顺序码可识别男女性别。也可以理解为第17位号码是奇数时,判断性别为男性,是偶数时,判断性别为女性。
在下表中,需要根据A列的身份证号码,判断识别出性别,把结果存放在C列。可以在C2单元格写公式,然后填充公式。
=IF(ISODD(MID(A2,17,1)),"男","女")
顺带解释一下这个嵌套公式的意思,方便初学函数的朋友了解。
MID:在一个字符串中从指定位数开始,截取指定位数的字符串。在这个应用中,是从A2单元格的身份证号码中,从第17位开始,截取1位字符。实际就是截取第17位的字符出来
ISODD:判断一个数字参数是奇数还是偶数,是奇数是返回结果TRUE,否则返回结果FALSE
IF:当判断结果为TRUE时,返回一个参数,否则返回另一个参数
三个函数参数由内向外传递参数,内层函数的计算结果传递给外层函数做为参数使用。
连起来的意思就是:判断A2单元格字符串的第17位,如果是奇数,结果是"男",否则结果是"女"。
额外再送几个可以获得相同结果的嵌套公式,略具画蛇添足,但有兴趣的朋友可以折解公式,学习一下相同的应用场景,不同的逻辑结构。
=IF(MOD(MID(A2,17,1),2),"男","女")
=TEXT(-1^MID(A2,17,1),"女;男")
=MID("女男",MOD(MID(A2,17,1),2) 1,1)
,