美文网首页
字符串字节长度限制

字符串字节长度限制

作者: 飛天江郎 | 来源:发表于2020-10-31 16:49 被阅读0次

记录一下防止日后忘记了

这是一个简单的识别字符串字节长度方式,如果有其他的欢迎留言交流:

/*
这里是直接减掉后续的字符串。
假设一个汉字字符串的长度为72,那么我这里限制了的话,
就会剩下少于或等于限制的那个字符串内容,
因为如果直接限制,有可能显示上会是中文乱码。
*/
-(NSString *)sortByName:(NSString *)baseStr withLength:(int)maxLen{
    NSArray *a1 = [baseStr componentsSeparatedByString:@"."];
    NSString *base1 = a1[0];
    NSMutableString *targetStr = [NSMutableString new];
    int index = 0;
    for (int i = 0; i<base1.length; i++) {
        NSString *t0 = [base1 substringWithRange:NSMakeRange(i, 1)];
        if ([self isZh_CN:t0]) {
            index+=3;
        }else{
            index+=1;
        }
        if (index< maxLen) {
            [targetStr appendString:t0];
        }else{
            break;
        }
    }
    return targetStr;
}
-(BOOL)isZh_CN:(NSString *)str{
    NSString *match = @"(^[\u4e00-\u9fa5]+$)";
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF matches %@", match];
    return [predicate evaluateWithObject:str];
}

相关文章

网友评论

      本文标题:字符串字节长度限制

      本文链接:https://www.haomeiwen.com/subject/ebgsvktx.html