Я искал чистую утилиту Swift 3.0 для перехода на / unescape из ссылок на символы HTML (то есть для приложений на стороне сервера Swift на MacOS и Linux), но не нашел комплексных решений, поэтому я написал свою собственную реализацию : https://github.com/IBM-Swift/swift-html-entities
Пакет, HTMLEntities
, работает с символами HTML4 с именами символов, а также с шестнадцатеричным / dec числовые символьные ссылки, и он будет распознавать специальные числовые ссылки символов в спецификации W3 HTML5 (т. е.
не будет отображаться как знак Евро (unicode U+20AC
) и NOT как символ Юникода для U+0080
, а некоторые диапазоны
Пример использования:
import HTMLEntities
// encode example
let html = ""
print(html.htmlEscape())
// Prints ”<script>alert("abc")</script>"
// decode example
let htmlencoded = "<script>alert("abc")</script>"
print(htmlencoded.htmlUnescape())
// Prints ”"
И для примера OP:
print("The Weeknd ‘King Of The Fall’ [Video Premiere] | @TheWeeknd | #SoPhi ".htmlUnescape())
// prints "The Weeknd ‘King Of The Fall’ [Video Premiere] | @TheWeeknd | #SoPhi "
Редактировать: HTMLEntities
теперь поддерживает ссылки на символы HTML5 с именами символов с версии 2.0.0. Также реализован синтаксический анализ, совместимый с параметрами.