3
如何从解码我的HTML字符串?解码HTML字符串
如何从解码我的HTML字符串?解码HTML字符串
您是否确实需要保留<span>
标签,同时替换ö
这个符号?由Leo Dabus在Convert Unicode symbol or its XML/HTML entities into its Unicode number in Swift中提出的一种技术,将这些符号转换为包括通过属性字符串将其翻转的符号。
在斯威夫特4:
extension String {
/// Converts HTML string to a `NSAttributedString`
var htmlAttributedString: NSAttributedString? {
return try? NSAttributedString(data: Data(utf8), options: [.documentType: NSAttributedString.DocumentType.html, .characterEncoding: String.Encoding.utf8.rawValue], documentAttributes: nil)
}
}
如果你想要一个属性串(例如,用于在UILabel
使用)
let string = "Björn is <em>great</em> name"
label.attributedText = string.htmlAttributedString
这种转换Björn
到Björn
和斜体的<em>...</em>
部分,也。
如果你只是要转换的HTML标记,并剥离出的HTML标签(如您的<span>
/</span>
),只要抓住了string
:
let string = "Björn is <em>great</em> name"
if let result = string.htmlAttributedString?.string {
print(result) // "Björn is great name"
}
事先斯威夫特版本,请参阅previous revision这个答案。
非常感谢!它的工作原理 – Kirill
'数据(在你的例子中使用:.utf8'片段抛出使用未解析的标识符'data''任何想法如何解决这个问题? – afkatja
嗨罗布和谢谢你奇怪,我使用斯威夫特3,仍然有 – afkatja