iOS开发:中文转拼音,中文转带声调拼音,中文提取首字母

Marmara ·
更新时间:2024-09-20
· 852 次阅读

目录Swift中文转拼音(带声调)中文转拼音(无声调)中文提取首字母Objective-C中文转拼音(带声调)中文转拼音(无声调)中文提取首字母 Swift 中文转拼音(带声调)

比如:中国 -> zhōng guó

let base = "中国" let mutableString = NSMutableString(string: base) CFStringTransform(mutableString, nil, kCFStringTransformToLatin, false) print(mutableString) // zhōng guó 中文转拼音(无声调)

比如:中国 -> zhong guo

let base = "中国" let mutableString = NSMutableString(string: base) CFStringTransform(mutableString, nil, kCFStringTransformToLatin, false) CFStringTransform(mutableString, nil, kCFStringTransformStripDiacritics, false) print(mutableString) // zhong guo 中文提取首字母

比如:中国 -> ZG

let base = "中国" let mutableString = NSMutableString(string: base) CFStringTransform(mutableString, nil, kCFStringTransformToLatin, false) let pinyinArray = mutableString.components(separatedBy: " ") let initials = pinyinArray.compactMap { String(format: "%c", $0.cString(using:.utf8)![0]) } let firstCharJoin = initials.joined().uppercased() print(firstCharJoin) // ZG Objective-C 中文转拼音(带声调)

比如:中国 -> zhōng guó

NSMutableString *mutableString = [[NSMutableString alloc] initWithString:@"中国"]; CFStringTransform((__bridge CFMutableStringRef)mutableString, NULL, kCFStringTransformToLatin, NO); NSLog(@"%@", mutableString); // zhōng guó 中文转拼音(无声调)

比如:中国 -> zhong guo

NSMutableString *mutableString = [[NSMutableString alloc] initWithString:@"中国"]; CFStringTransform((__bridge CFMutableStringRef)mutableString, NULL, kCFStringTransformToLatin, NO); CFStringTransform((__bridge CFMutableStringRef)mutableString, NULL, kCFStringTransformStripDiacritics, false); NSLog(@"%@", mutableString); // zhong guo 中文提取首字母

比如:中国 -> ZG

NSMutableString *mutableString = [[NSMutableString alloc] initWithString:@"中国"]; CFStringTransform((__bridge CFMutableStringRef)mutableString, NULL, kCFStringTransformToLatin, NO); NSMutableString *firstCharJoin = [[NSMutableString alloc] init]; NSArray *pinyinArray = [mutableString componentsSeparatedByString:@" "]; for (NSString *pinyin in pinyinArray) { [firstCharJoin appendFormat:@"%c", [pinyin characterAtIndex:0]]; } NSLog(@"%@", firstCharJoin.uppercaseString); // ZG Harvey66 原创文章 67获赞 8访问量 6万+ 关注 私信 展开阅读全文
作者:Harvey66



转拼音 ios开发 字母 IOS

需要 登录 后方可回复, 如果你还没有账号请 注册新账号