1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
unless String.method_defined? :remove_suffix
class String
# Removes a suffix in a string.
#
# @return [String] a new string without the suffix.
#
# @example
# 'Ladies Night'.remove_suffix(' Night') #=> 'Ladies'
def remove_suffix(pattern)
dup.remove_suffix!(pattern)
end
# Removes a suffix in a string.
#
# @return [String] the string without the suffix.
#
# @example
# 'Ladies Night'.remove_suffix!(' Night') #=> 'Ladies'
def remove_suffix!(pattern)
gsub!(/#{pattern}\z/, '')
end
end
end
|