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')
Thanks,
Carl
···
--
Posted via http://www.ruby-forum.com/.
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
···
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
Carl Graff 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')
How about:
s = '012-014640-001'
puts s.gsub(/(.*)-.(.*)/, "\\1-X\\2")
puts s.gsub(/(.*)-.(.*)/) { "#{$1}-X#{$2}" }
···
--
vjoel : Joel VanderWerf : path berkeley edu : 510 665 3407