Как быстро убрать символы Юникода в Swift Strings? Прямо сейчас у меня есть массив строк, и, чтобы сделать его более удобочитаемым для пользователя, я добавил следующий код, который перебирает каждую строку в массиве.
for i in 0...(titles.count - 1) {
var s = titles[i]
s = s.stringByReplacingOccurrencesOfString(""", withString: "\"")
s = s.stringByReplacingOccurrencesOfString("&", withString: "&")
s = s.stringByReplacingOccurrencesOfString("\\u00e1", withString: "\u{00e1}")
s = s.stringByReplacingOccurrencesOfString("\\u00e9", withString: "\u{00e9}")
s = s.stringByReplacingOccurrencesOfString("\\u00e8", withString: "\u{00e8}")
s = s.stringByReplacingOccurrencesOfString("\\u00e0", withString: "\u{00e0}")
s = s.stringByReplacingOccurrencesOfString("\\u00d8", withString: "\u{00d8}")
s = s.stringByReplacingOccurrencesOfString("\\u00c3", withString: "\u{00c3}")
s = s.stringByReplacingOccurrencesOfString("\\u00a4", withString: "\u{00a4}")
s = s.stringByReplacingOccurrencesOfString("\\u00eb", withString: "\u{00eb}")
s = s.stringByReplacingOccurrencesOfString("\\u2022", withString: "\u{2022}")
s = s.stringByReplacingOccurrencesOfString("\\u00c9", withString: "\u{00c9}")
s = s.stringByReplacingOccurrencesOfString("\\u00b3", withString: "\u{00b3}")
s = s.stringByReplacingOccurrencesOfString("\\u2019", withString: "\u{2019}")
s = s.stringByReplacingOccurrencesOfString("\\u2730", withString: "\u{2730}")
s = s.stringByReplacingOccurrencesOfString("\\u266b", withString: "\u{266b}")
s = s.stringByReplacingOccurrencesOfString("\\u00f8", withString: "\u{00f8}")
s = s.stringByReplacingOccurrencesOfString("\\/", withString: "/")
titles[i] = s
}
Например, в пятой строке любое вхождение \u00e1
заменяется соответствующим символом Юникода á
.
Массив строк создается с помощью:
myHTMLString = try NSString(contentsOfURL: url, encoding: NSUTF8StringEncoding)
Где url = NSURL(string: "http://songa.nl/ajax.php?params=playlist/load/US87OmpN")!
и разделение строки на разные подстроки, когда встречается ".
Есть ли менее хакерский (и, возможно, более быстрый) и более общий способ распаковать символы юникода?