1.这里的身份证指的是中华人民共和国第二代身份证;
2.子串的定义:一个字符串内连续的若干个字符组成的部分。
考察身份证号的规则
假设 114514 是身份证前 6 位,则 11 为北京,但北京没有第3第4位为45的区域,匹配失败
而身份证第7位开始就是生日了,YYYYMMDD 格式,显然这个子串也匹配不上年份,只能继续往后匹配
因此这个子串可能是身份证的末尾 6 位,代表 11 日出生,当地派出所编号 45,男性
经评论提醒,也可能是1月或11月14日出生的女性
下来就看题意,如果是行测题,那么就按照上述条件大致估算一下
如果是编程题,那无非就是 String.endsWith() 的实现,从尾巴开始往前匹配就完了
作者:Dante
链接:https://www.zhihu.com/question/611369563/answer/3112705181
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
ABCDEFGHIJKLMNOPQR
ABCDEF是114514的话并没有这个行政区划代码。
BCDEFG的话G不可能是4,起码要到4000年才可能出现,而且暂时每个省/自治区排14的市并没有第21个区(代码是51)。
CDEFGH的话GH年份太早了,不行。
DEFGHI的话起码要到5140年,年份不对。
EFGHIJ的话4514年,不对。
FGHIJK的话1451年太早,而且没有四十几月。
GHIJKL的话1145年太早,而且没有14月。
HIJKLM的话没有51月。
IJKLMN的话没有45月14日。
JKLMNO的话没有14月51日。
KLMNOP的话11月没有45日。
LMNOPQ的话1月14日或者11月14日出生的女性可能出现。
MNOPQR的话11日出生的男性可能出现。
作者:这是什么
链接:https://www.zhihu.com/question/611369563/answer/3136044507
熾羽-焱凰:
没有,至少sgk并没有查到