我目前通过API调用收到了以下字符串:
\n\n这是一个发现柏林的好地方,也是一个舒适的归宿。
我想将其转换为更易读的格式:
这是一个发现柏林的好地方,也是一个舒适的归宿。
我查看了这篇文章,但那是手动编写每个转换,而可能会引入更多的这些Unicode标量字符。
据我所知,\u{2019}
是Unicode标量,但其格式为\U2019
,我很困惑。是否有任何内置方法可以进行此转换?
我目前通过API调用收到了以下字符串:
\n\n这是一个发现柏林的好地方,也是一个舒适的归宿。
我想将其转换为更易读的格式:
这是一个发现柏林的好地方,也是一个舒适的归宿。
我查看了这篇文章,但那是手动编写每个转换,而可能会引入更多的这些Unicode标量字符。
据我所知,\u{2019}
是Unicode标量,但其格式为\U2019
,我很困惑。是否有任何内置方法可以进行此转换?
这个回答建议使用NSString方法stringByFoldingWithOptions
。
Swift String
类有一个叫做“视图”的概念,它允许您在不同的编码下操作字符串。这很不错,还有一些视图可能会帮助您。
如果您在Swift中处理字符串,请阅读Mike Ash的这篇优秀的文章。他详细讨论了什么是真正的字符串,并提供了一些对Swift 2有用的提示。
假设您已经将字符串拆分并可以单独获取有问题的格式:
func convertFormat(stringOrig: String) -> Character {
let subString = String(stringOrig.characters.split("U").map({$0})[1])
let scalarValue = Int(subString)
let scalar = UnicodeScalar(scalarValue!)
return Character(scalar)
}
这将把字符串"\U2019"
转换为由"\u{2019}"
表示的字符。