Fun with String class methods
Posted by root Sat, 14 Jun 2008 13:45:00 GMT
class MyString < String
# not really useful
alias + concat
# emulates Array '*' method
def *(string)
self.split('').inject('') do |s1,c|
s1 + c + string
end
end
# emulates Array '-' method
def /(string)
(self.split('') - string.split('')).to_s
end
# chars' delimiter
def delimiter(string)
self.*(string).sub /.$/, ''
end
end
a = MyString.new("abcdef")
b = MyString.new("ABCDEF")
puts a * ':'
puts a / (b + "a")
puts a.delimiter(":")
#a:b:c:d:e:f:
#bcdef
#a:b:c:d:e:f