gpt4 book ai didi

string - 在 Swift 中转换字符串的瑞典语章程

转载 作者:行者123 更新时间:2023-11-28 09:38:37 25 4
gpt4 key购买 nike

var str = "Stavsnäs"
var strWithoutWierdCharacters = str.stringByReplacingOccurrencesOfString("ä", withString: "ä", options: NSStringCompareOptions.LiteralSearch, range:nil)

在 Swift 中一定有更好的方法来做到这一点?

最佳答案

似乎 str 的每个 UTF-8 字节 都有一个 Unicode 字符“真实”字符串。例如,字符“ä”(具有 UTF-8 表示 C3 A4)存储为两个 Unicode 字符“Ô= U+00C3 和“¤”= U+00A4

最好在“输入端”解决该问题。如果那不可能,只要 str 中的所有字符都在范围 U+0000 .. U+00FF:

let str = "Stavsnäs"
if let data = str.dataUsingEncoding(NSISOLatin1StringEncoding) {
if let fixed = NSString(data: data, encoding: NSUTF8StringEncoding) {
println(fixed) // Stavsnäs
}
}

它使用了 NSISOLatin1StringEncoding 映射 Unicode 字符的事实U+0000 .. U+00FF 精确到字节 00 .. FF。所以“ä”被转换为字节C3 A4 然后这些字节被解释为 UTF-8 并转换回 Unicode。

关于string - 在 Swift 中转换字符串的瑞典语章程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26468865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com