How to remove diacritics (or accents) from a String (like say change \"één\" to \"een\") in Swift? Do I have to go back to NSString or can it be do
Update to @MartinR's answer… a Swift 3 extension to provide a string for sorting / searching, that might be useful for someone…
extension String {
var forSorting: String {
let simple = folding(options: [.diacriticInsensitive, .widthInsensitive, .caseInsensitive], locale: nil)
let nonAlphaNumeric = CharacterSet.alphanumerics.inverted
return simple.components(separatedBy: nonAlphaNumeric).joined(separator: "")
}
}
e.g.
print("Mÿ nâMe ís jÄço´B".forSorting) // "mynameisjacob"