Skip to content

Instantly share code, notes, and snippets.

@natecook1000
Created September 29, 2014 02:46
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save natecook1000/1c9fb74c42808bcd0b69 to your computer and use it in GitHub Desktop.
Save natecook1000/1c9fb74c42808bcd0b69 to your computer and use it in GitHub Desktop.
toUnicodeScalar() method for Character
extension Character {
func toUnicodeScalar() -> UnicodeScalar? {
let s = String(self)
if distance(s.unicodeScalars.startIndex, s.unicodeScalars.endIndex) > 1 {
return nil
}
return s.unicodeScalars[s.unicodeScalars.startIndex]
}
}
let char: Character = "A"
let dog: Character = "🐶"
let flag: Character = "🇺🇸"
println(char.toUnicodeScalar()?.value)
// Optional(65)
println(dog.toUnicodeScalar()?.value)
// Optional(128054)
println(flag.toUnicodeScalar()?.value)
// nil
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment