字符串: 4位1空格银行卡、银行卡加*、手机号加*

- (NSString *)convertAccountString:(NSString *)str{
    
    NSString *getString = @"";
    
    int a = (int)str.length/4;
    int b = (int)str.length%4;
    int c = a;
    
    if (b>0){
        c = a+1;
    }else{
        c = a;
    }
    
    for (int i = 0 ; i<c; i++){
        
        NSString *string = @"";
        
        if (i == (c-1)) {
            if (b>0) {
                string = [str substringWithRange:NSMakeRange(4*(c-1), b)];
            }else {
                string = [str substringWithRange:NSMakeRange(4*i, 4)];
            }
        }else {
            string = [str substringWithRange:NSMakeRange(4*i, 4)];
        }
        
        getString = [NSString stringWithFormat:@"%@ %@",getString,string];
    }
    
    return getString;
}



原作者代码下载

感谢原作者的代码分享。但是对其代码风格表示鄙视!

自己项目中的关于:

银行卡加空格

银行卡加****

手机号加****

等,代码如下:



+ (NSString *)encryptRealNameUserNameString:(NSString*)str{

    

    NSUInteger length = str.length;

    NSMutableString * result = [[NSMutableString alloc] init];

    

    for (NSUInteger i = 0; i < length - 1; i++) {

        [result appendString:@"*"];

    }

    

    [result appendString:[str substringFromIndex:length - 1]];

    

    return result;

}

+ (NSString *)encryptRealNameMobileNoString:(NSString*)str{

    

    NSUInteger length = str.length;


    NSMutableString * result = [[NSMutableString alloc] init];

    [result appendString:[str substringToIndex:3]];

    [result appendString:@"****"];

    [result appendString:[str substringFromIndex:length-4]];

    return result;

}



+ (NSString *)encryptRealNameIDCardNumberString:(NSString*)str{

    

    NSUInteger length = str.length;

    NSMutableString * result = [[NSMutableString alloc] initWithString:[str substringToIndex:1]];

    

    for (NSUInteger i = 1; i < length - 1; i++) {

        [result appendString:@"*"];

    }

    

    [result appendString:[str substringFromIndex:length - 1]];

    

    return result;

}


+ (NSString *)encryptRealNameBankNumberString:(NSString*)str{

    

    NSString * strFoo = [NSString stringWithFormat:@"%@", [DSRealNameModel clearRealNameSpaceInString:str]];

    NSInteger length = str.length;

    

    if (length <= 4) return strFoo;

    

    NSString * last4No = [str substringWithRange:NSMakeRange(length - 4, 4)];

    NSMutableString * tempStr = [NSMutableString string];

    for (int i = 0; i < length - 4; i++) {

        [tempStr appendString:@"*"];

    }

    NSString * encryNoStr = [NSString stringWithFormat:@"%@%@", tempStr, last4No];

    NSMutableString * result = encryNoStr.mutableCopy;

    

    int flag = 0;

    for (int i = 1; i <= length/4 ; i++) {

        NSInteger index = i*4 + flag++;

        [result insertString:@" " atIndex: index];

    }

    

//    NSUInteger length = strFoo.length;

//    NSUInteger times = length / 4;

//    NSUInteger trailing = length % 4;

//    NSMutableString * result = [[NSMutableString alloc] init];

//

//    if (length <= 4) return strFoo;

//

//    for (NSUInteger i = 0; i < times; i++) {

//

//        [result appendString:@"**** "];

//    }

//

//    [result appendString:[strFoo substringWithRange:NSMakeRange(4*times, trailing)]];

    

    return result;

}


+ (NSString *)standardRealNameBankNumberString:(NSString*)str{

    

    NSString * strFoo = [NSString stringWithFormat:@"%@", [DSRealNameModel clearRealNameSpaceInString:str]];

    

    NSUInteger length = strFoo.length;

    NSUInteger times = length / 4;

    NSUInteger trailing = length % 4;

    NSMutableString * result = [[NSMutableString alloc] init];

    

    if (length <= 4) return strFoo;

    

    for (NSUInteger i = 0; i < times; i++) {

        

        NSRange range = NSMakeRange(4*i, 4);

        NSString * str = [strFoo substringWithRange:range];

        if (i > 0) [result appendString:@" "];

        [result appendString:str];

    }

    

    if (trailing > 0) [result appendString:@" "];

    [result appendString:[strFoo substringWithRange:NSMakeRange(4*times, trailing)]];

    

    return result;

}


+ (NSString *)clearRealNameSpaceInString:(NSString*)str{

    

    NSArray * strs = [NSArray arrayWithArray:[str componentsSeparatedByString:@" "]];

    NSMutableString * result = [[NSMutableString alloc] init];

    for (int i = 0; i< strs.count; i++) {

        [result appendString:strs[i]];

    }

    return result;

}






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值