Swift - 使用CoreFoundation中文转拼音

开发中我们有时候需要将中文转成拼音,如通讯录应用等。废话不多说,直接上代码。(Swift 3.0)

import Foundation

extension String {
    var pinyin: String {
        let str = NSMutableString(string: self)
        CFStringTransform(str, nil, kCFStringTransformMandarinLatin, false)
        CFStringTransform(str, nil, kCFStringTransformStripDiacritics, false)
        return str.capitalized
    }
}

"新年好".pinyin          // "Xin Nian Hao"
"恭喜发财".pinyin        // "Gong Xi Fa Cai"
"喜欢请打赏我哦".pinyin   // "Xi Huan Qing Da Shang Wo O"

常量说明:
kCFStringTransformMandarinLatin - 将中文字符转换成英文字符;
kCFStringTransformStripDiacritics - 去除字符中的变音符号,也就是拼音里的声调。

好啦,终于可以高效又优雅地转拼音了。有任何问题欢迎留言~

你可能感兴趣的:(Swift - 使用CoreFoundation中文转拼音)