Skip to content

Instantly share code, notes, and snippets.

@AfonsoTsukamoto
Created March 29, 2015 23:15
Show Gist options
  • Save AfonsoTsukamoto/b8f9f6af65cb3991ca30 to your computer and use it in GitHub Desktop.
Save AfonsoTsukamoto/b8f9f6af65cb3991ca30 to your computer and use it in GitHub Desktop.
A swift string extension to add strip html method to native string
//
// String+StripHtml.swift
import Foundation
class StringStripHTMLParserDelegate: NSObject, NSXMLParserDelegate{
var strings : [String] = []
func parser(parser: NSXMLParser!, foundCharacters string: String!) {
self.strings.append(string)
}
func getFoundChars() -> String{
let arr = self.strings as NSArray
return arr.componentsJoinedByString("") as String
}
}
extension String{
func stripHTML() -> String{
let _self = self as NSString
var string = _self.stringByReplacingOccurrencesOfString("&", withString: "&")
string = NSString(format: "<root>%@</root>", string)
let encoding = string.fastestEncoding
var data = string.dataUsingEncoding(encoding, allowLossyConversion: false)
var parser = NSXMLParser(data: data)
var parsed = StringStripHTMLParserDelegate()
parser.delegate = parsed
parser.parse()
string = parsed.getFoundChars()
return string;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment