//獲取拼音首字母(傳入漢字字符串, 返回大寫(xiě)拼音首字母)
- (NSString *)firstCharactor:(NSString *)aString
{
//轉(zhuǎn)成了可變字符串
NSMutableString *str = [NSMutableString stringWithString:aString];
//先轉(zhuǎn)換為帶聲調(diào)的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformMandarinLatin,NO);
//再轉(zhuǎn)換為不帶聲調(diào)的拼音
CFStringTransform((CFMutableStringRef)str,NULL, kCFStringTransformStripDiacritics,NO);
//轉(zhuǎn)化為大寫(xiě)拼音
NSString *pinYin = [str capitalizedString];
//獲取并返回首字母
return [pinYin substringToIndex:1];
}
此方法可解決簡(jiǎn)單的問(wèn)題,但是對(duì)于多音字是有問(wèn)題的,比如,長(zhǎng)春,長(zhǎng)沙,長(zhǎng)輩,返回的都是Z。而長(zhǎng)輩返回的應(yīng)是c,此問(wèn)題有更好的解決方法的話(huà)可以留言發(fā)表自己看法。