我通过REST API接收一个字符串,其中包含\ uXXXX
形式的unicode编码字符e.g。 Ain \ u2019t应该是不是
有没有很好的方法来转换它们?
由于
答案 0 :(得分:6)
您可以使用\u{my_unicode}
:
print("Ain\u{2019}t this a beautiful day")
/* Prints "Ain’t this a beautiful day"
来自Language Guide - Strings and Characters - Unicode:
字符串文字可以包含以下特殊字符:
...
- 任意Unicode标量,写为\ u {n},其中n为1-8位 十六进制数,其值等于有效的Unicode代码点
答案 1 :(得分:1)
您可以应用字符串转换std::set
:
StringTransform
extension String {
var decodingUnicodeCharacters: String { applyingTransform(.init("Hex-Any"), reverse: false) ?? "" }
}