在土耳其语中,有两个i:
1.无点:ı,I
2.有点:i,İ
问题:每次大写一个i时,都会得到一个I。
解决方案:当我大写一个i时,只想得到一个İ(仅限土耳其语),并且在我大写一个ı时想得到一个I。
我有一个函数可以实现这个目的。
1.无点:ı,I
2.有点:i,İ
问题:每次大写一个i时,都会得到一个I。
解决方案:当我大写一个i时,只想得到一个İ(仅限土耳其语),并且在我大写一个ı时想得到一个I。
我有一个函数可以实现这个目的。
@objc public static func uppercaseTurkishString(_ string: String) -> String {
return String(string.map { (char) -> Character in
if char == "i" {
return "İ"
} else {
return Character(String(char).uppercased())
}
})
}
但每次使用它时我都必须检查语言是否为土耳其语,对于应用程序中的每个字符串都这样做是一项非常困难的工作。
有没有更简单的方法?
let turckishI = "Dotless: ı, I Dotted: i, İ"
,然后调用turckishI.localizedLowercase
,你会发现渲染出来的小写字母 i(最后一个)与你的不同。但是也有本地化的大写形式。 - Larme