iOS 汉字转拼音总结

小编最近在做一个通讯录电话类的App,做模糊查询(拼音,首字母,号码等)的时候需要将电话中的号码取出来再加工得到首字母等等。 遇到一个问题就是汉字转拼音的效率问题。

下面列举几种汉字转拼音的方式:

一、自带的,这种方式效率很低,转换数量较少推荐使用

+ (NSString *)fullCharactor:(NSString *)aString{
    //低效率
    //转成了可变字符串
    NSMutableString *str = [NSMutableString stringWithString:aString];
    //先转换为带声调的拼音
    CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);
    //再转换为不带声调的拼音
    CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);
    //转化为大写拼音
    NSString *pinYin = [str capitalizedString];
    return pinYin;
}

二、第三方

1.PinYin4Objc - 功能多,效率高
https://github.com/kimziv/PinYin4Objc

2.LQQNameSortTool - 带有分组排序功能,效率也不错
https://github.com/LQQZYY/LQQNameSortTool

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容