开发中我们有时候需要将中文转成拼音,如通讯录应用等。废话不多说,直接上代码。(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
- 去除字符中的变音符号,也就是拼音里的声调。
好啦,终于可以高效又优雅地转拼音了。有任何问题欢迎留言~