記錄一下防止日后忘記了
這是一個簡單的識別字符串字節(jié)長度方式,如果有其他的歡迎留言交流:
/*
這里是直接減掉后續(xù)的字符串。
假設(shè)一個漢字字符串的長度為72冲泥,那么我這里限制了的話,
就會剩下少于或等于限制的那個字符串內(nèi)容对人,
因為如果直接限制简僧,有可能顯示上會是中文亂碼王凑。
*/
-(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];
}