废话不多说,直接撸代码。
+(NSArray* )getChineseStringFromString:(NSString* )string{
if (string == nil || [string isEqual:@""])
{
return nil;
}
NSMutableArray *arr = [[NSMutableArray alloc]init] ;
for (int i=0; i<[string length]; i++)
{
int a = [string characterAtIndex:i];
if ((a <= 0x9fff && a >= 0x4e00 ) || (a >= 0x30 && a <= 0x39) || (a >= 0x61 && a <= 0x7a) || (a >= 0x41 && a <= 0x5a))
{
[arr addObject:[string substringWithRange:NSMakeRange(i, 1)]] ;;
}
}
return arr;
}
这个方法就是遍历字符串中的每一个字符,并获取每个字符的unicode编码位置,并将这个位置和英文,数字,中文的unicode编码范围进行比较,若在这几个范围内,则将其加入数组中,就将其中你想要的字符筛选出来,最后遍历返回的数组拼接起来就ok。