Swift 5. user187676's excellent solution can be extended to make a more general trimming method.
// Drop any character contained in the set characters from the end of self.
// Defaults to trimming spaces, CR, LF
extension String {
func trimTrailing(_ characters: String = " \r\n") -> String {
String(reversed().drop {characters.contains($0)}.reversed())
}
}
and can be used like this:
let valueTrimmed = value.trimTrailing() // Default character set
let valueTrimmed = value.trimTrailing("@\0\u{FF}") // Custom character set