zoukankan      html  css  js  c++  java
  • 提取身份证号中的生日、性别

    调用方法 把身份证字符串传进来 可返回生日数字
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    -(NSString *)birthdayStrFromIdentityCard:(NSString *)numberStr{
         
        if(EMPTY_NIL_STR(numberStr))
            return nil;
        NSMutableString *result = [NSMutableString stringWithCapacity:0];
        NSString *year = nil;
        NSString *month = nil;
         
        BOOL isAllNumber = YES;
        NSString *day = nil;
        if([numberStr length]<14)
            return result;
         
        //**截取前14位
        NSString *fontNumer = [numberStr substringWithRange:NSMakeRange(0, 13)];
         
        //**检测前14位否全都是数字;
        const char *str = [fontNumer UTF8String];
        const char *p = str;
        while (*p!='0') {
            if(!(*p>='0'&&*p<='9'))
                isAllNumber = NO;
            p++;
        }
         
        if(!isAllNumber)
            return result;
         
        year = [numberStr substringWithRange:NSMakeRange(6, 4)];
        month = [numberStr substringWithRange:NSMakeRange(10, 2)];
        day = [numberStr substringWithRange:NSMakeRange(12,2)];
         
        [result appendString:year];
        [result appendString:@"-"];
        [result appendString:month];
        [result appendString:@"-"];
        [result appendString:day];
        return result;
         
    }
    把身份证号码的字符串传进来通过数据返回性别
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    -(NSString *)sexStrFromIdentityCard:(NSString *)numberStr{
        NSString *result = nil;
         
        BOOL isAllNumber = YES;
         
        if([numberStr length]<17)
            return result;
         
        //**截取第17为性别识别符
        NSString *fontNumer = [numberStr substringWithRange:NSMakeRange(16, 1)];
         
        //**检测是否是数字;
        const char *str = [fontNumer UTF8String];
        const char *p = str;
        while (*p!='0') {
            if(!(*p>='0'&&*p<='9'))
                isAllNumber = NO;
            p++;
        }
         
        if(!isAllNumber)
            return result;
         
        int sexNumber = [fontNumer integerValue];
        if(sexNumber%2==1)
            result = @"男";
        ///result = @"M";
        else if (sexNumber%2==0)
            result = @"女";
        //result = @"F";
         
        return result;
         
         
    }
  • 相关阅读:
    c# 让接口实现方法
    码支付 C#
    WebApi 接口返回值类型详解
    阿里云RDS数据库sql server 导入数据并添加作业小结
    IIS 图片 JS CSS 500错误
    XML字符串反序列化为实体
    找不到请求的 .Net Framework Data Provider
    JS通过ClassName禁止DIV点击
    WebRequest请求被中止: 未能创建 SSL/TLS 安全通道
    NetMQ 消息队列
  • 原文地址:https://www.cnblogs.com/ranger-jlu/p/3877838.html
Copyright © 2011-2022 走看看