iOS-漢字轉(zhuǎn)拼音(未完待續(xù))

Core Foundation包含文字轉(zhuǎn)拼音的相應(yīng)方法,而且還支持聲調(diào)。具體過程如下:

  • 首先假設(shè)有一段文字

    NSString *str = @"小敏";
    
  • 文字→帶聲調(diào)的拼音

    // 注意:以下操作必須先將不可變字符串轉(zhuǎn)化為可變字符串才能將漢字轉(zhuǎn)化成拼音
    // ??代碼可替換為:NSMutableString *strM = [str mutableCopy];
    NSMutableString *strM = [NSMutableString stringWithString:str];
    // 轉(zhuǎn)成帶聲調(diào)的拼音
    CFStringTransform((CFMutableStringRef)str, NULL, kCFStringTransformToLatin, false);
    

NSLog(@"%@", strM);
輸出結(jié)果:xiǎo mǐn
```

  • 文字→不帶聲調(diào)的拼音

    // 轉(zhuǎn)成不帶聲調(diào)的拼音
    CFStringTransform((CFMutableStringRef)strM, NULL, kCFStringTransformStripDiacritics, false);
    

NSLog(@"%@", strM);
輸出結(jié)果:xiao min
```

  • 轉(zhuǎn)換的拼音之間會有空格,可根據(jù)需要進(jìn)行刪除

    // 刪除拼音之間的空格
    NSString *resultStr = [strM stringByReplacingOccurrencesOfString:@" " withString:@""];
    

NSLog(@"%@", resultStr);
輸出結(jié)果:xiaomin
```

  • 獲取拼音首字母(大寫字母)

    // 獲取首字母并轉(zhuǎn)換為大寫字母
    NSString *firstLetter = [strM substringToIndex:1].uppercaseString;
    

NSLog(@"%@", firstLetter);
輸出結(jié)果:X
```

注意:這種轉(zhuǎn)換方式僅適用于性能要求不高的場景!自行決定是否使用!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 原文 在這里總結(jié)一些iOS開發(fā)中的小技巧,能大大方便我們的開發(fā),持續(xù)更新。 1.UITableView的Group...
    無灃閱讀 794評論 0 2
  • UITableView的Group樣式下頂部空白處理//分組列表頭部空白處理UIView *view = [[UI...
    阿茲爾閱讀 337評論 0 1
  • 1、截取字符串”20 | http://www.baidu.com”中,”|”字符前面和后面的數(shù)據(jù),分別輸出它們 ...
    強(qiáng)子ly閱讀 3,014評論 8 46
  • 提到我的出生,老媽常調(diào)侃說:“我和你爸沒打算生你,既然來到這個(gè)家了,就留下吧。”這類的話,每每聽到,總覺得我的...
    龍貓的綠葉傘閱讀 987評論 0 1