将 String 中的 unicode 符号 \uXXXX 转换为 Swift 中的字符
Convert unicode symbols \uXXXX in String to Character in Swift
我正在通过 REST API 接收一个字符串,其中包含 \uXXXX
形式的 unicode 编码字符
例如Ain\u2019t
应该是 Ain’t
有什么好的转换方法吗?
您可以使用 \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:
String literals can include the following special characters:
...
- An arbitrary Unicode scalar, written as \u{n}, where n is a 1–8 digit
hexadecimal number with a value equal to a valid Unicode code point
您可以应用字符串转换 StringTransform
:
extension String {
var decodingUnicodeCharacters: String { applyingTransform(.init("Hex-Any"), reverse: false) ?? "" }
}
let string = #"Ain\u2019t"#
print(string.decodingUnicodeCharacters) // "Ain’t\n"
我正在通过 REST API 接收一个字符串,其中包含 \uXXXX
例如Ain\u2019t
应该是 Ain’t
有什么好的转换方法吗?
您可以使用 \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:
String literals can include the following special characters:
...
- An arbitrary Unicode scalar, written as \u{n}, where n is a 1–8 digit hexadecimal number with a value equal to a valid Unicode code point
您可以应用字符串转换 StringTransform
:
extension String {
var decodingUnicodeCharacters: String { applyingTransform(.init("Hex-Any"), reverse: false) ?? "" }
}
let string = #"Ain\u2019t"#
print(string.decodingUnicodeCharacters) // "Ain’t\n"