Michael Guterl
1/24/2008 12:37:00 AM
[Note: parts of this message were removed to make it a legal post.]
On Jan 23, 2008 7:23 PM, Carl Graff <cagraff@cox.net> wrote:
> Hi,
>
> I missed the stuff function or method found in some languages so I added
> this method to my Helpers mixin.
>
>
> def stuff(str, substr, rplstr, prefix = '.*')
> r1 = Regexp.new("(#{prefix})(#{substr})(.*)")
> str.gsub(r1,'\1'+rplstr+'\3')
> end
>
> puts stuff('012-014640-001','-.','-X')
>
> This works but if you know a better way please share so I can learn.
>
> In particular it would be nicer I think if it worked like this:
>
> new_str = '012-014640-001'.stuff('-.','-X')
>
> Try this if you want it to work like above. You should always be careful
when modifying core classes, yada yada yada...
class String
def stuff(substr, rplstr, prefix = '.*')
r1 = Regexp.new("(#{prefix})(#{substr})(.*)")
self.gsub(r1,'\1'+rplstr+'\3')
end
end
Michael Guterl