[英]Convert unicode symbols \uXXXX in String to Character in Swift
我通过 REST API 接收一个字符串,其中包含\\uXXXX
形式的 unicode 编码字符
例如Ain\’t
应该是Ain't
有没有好的方法来转换这些?
您可以使用\\u{my_unicode}
:
print("Ain\u{2019}t this a beautiful day")
/* Prints "Ain’t this a beautiful day"
字符串文字可以包含以下特殊字符:
...
- 任意 Unicode 标量,写为 \\u{n},其中 n 是 1-8 位十六进制数,其值等于有效的 Unicode 代码点
您可以应用字符串转换StringTransform
:
extension String {
var decodingUnicodeCharacters: String { applyingTransform(.init("Hex-Any"), reverse: false) ?? "" }
}
let string = #"Ain\u2019t"#
print(string.decodingUnicodeCharacters) // "Ain’t\n"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.