Trim spaces from end of a NSString

Taken from this answer here: https://stackoverflow.com/a/5691567/251012 – (NSString *)stringByTrimmingTrailingCharactersInSet:(NSCharacterSet *)characterSet { NSRange rangeOfLastWantedCharacter = [self rangeOfCharacterFromSet:[characterSet invertedSet] options:NSBackwardsSearch]; if (rangeOfLastWantedCharacter.location == NSNotFound) { return @””; } return [self substringToIndex:rangeOfLastWantedCharacter.location+1]; // non-inclusive }

NSRange to Range

As of Swift 4 (Xcode 9), the Swift standard library provides methods to convert between Swift string ranges (Range<String.Index>) and NSString ranges (NSRange). Example: let str = “a👿b🇩🇪c” let r1 = str.range(of: “🇩🇪”)! // String range to NSRange: let n1 = NSRange(r1, in: str) print((str as NSString).substring(with: n1)) // 🇩🇪 // NSRange back to String … Read more