Skip to content

Instantly share code, notes, and snippets.

@ericdke
Created January 13, 2016 17:17
Show Gist options
  • Save ericdke/fe3dea5a9b2cac9edd88 to your computer and use it in GitHub Desktop.
Save ericdke/fe3dea5a9b2cac9edd88 to your computer and use it in GitHub Desktop.
extension NSCharacterSet {
var characters:[String] {
var chars = [String]()
for plane:UInt8 in 0...16 {
if self.hasMemberInPlane(plane) {
for (var c:UTF32Char = UInt32(plane) << 16; c < (UInt32(plane) + 1) << 16; c += 1) {
if self.longCharacterIsMember(c) {
let s = NSString(bytes: &c, length: 4, encoding: NSUTF32LittleEndianStringEncoding)!
chars.append(String(s))
}
}
}
}
return chars
}
}
let charset = NSCharacterSet.URLQueryAllowedCharacterSet()
print(charset.characters.joinWithSeparator(""))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment