iOS软件开发过程中如果用到了搜索功能,可能会用到汉字转拼音,iOS自带了汉字转拼音的方法。
#warning 参数 ChineseString 必须是 NSMutableString
- (NSString*)ChineseCharacterStringToCombineSyllablesWithChineseSting:(NSMutableString*)ChineseString
{
NSString *resultString = @"";
//需要先转化成带声调的拼音,才能转化成不带音调的。所以进行了两步。
if (CFStringTransform((__bridge CFMutableStringRef)ChineseString, 0, kCFStringTransformMandarinLatin, NO))
{
NSLog(@"拼音带声调:%@",ChineseString);
}
if (CFStringTransform((__bridge CFMutableStringRef)ChineseString, 0, kCFStringTransformStripCombiningMarks, NO))
{
NSLog(@"不带拼音带声调:%@",ChineseString);
NSArray *resultStringArray = [ChineseString componentsSeparatedByString:@" "];
for (NSString *string in resultStringArray) {
resultString = [resultString stringByAppendingString:string];
}
}
return resultString ;
}