From: Corey Haines Date: 2008-02-03T08:00:55+09:00 Subject: Re: Strings .each method ------=_Part_540_28167855.1201993256219 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline Very cool, Rob! On Feb 2, 2008 5:21 PM, Rob Biedenharn wrote: > > On Feb 2, 2008, at 5:14 PM, Chris Hickman wrote: > > > Corey Haines wrote: > >> but if you can describe why you want to do it, there might be a > >> different way > > > > It is kind of hard to explain but I have a long string that someone > > typed into a form which was then saved into a database. They used > > made > > up tags such as ", , , , ..." I > > have to translate the string into html and add javascript etc. based > > on > > the different tags they wrote. > > > > I have it working for everything except one task. In this one task I > > want to pass the words between two tags as a value for the javascript. > > The problem is it is pulling the phrase apart at every space. I > > know I > > can add .each(???) and have it pull everything apart at the ??? but it > > would involve a lot of adding ??? to this long string. > > > > What I am trying to do is add a while loop inside the block that will > > look ahead at the next substring to see if it is a "". If > > it > > is I want it to exit the while loop and go on without throwing away > > the > > "" tag because it is needed next time through the block. > > > > Sorry if that didnt make sense at all. > > Perhaps something like this: > > irb> require 'enumerator' > => true > irb> a = "This is a big list of words" > => "This is a big list of words" > irb> (a.split(' ') << nil).each_cons(2) {|word,lookahead| puts "%-10s > %s"%[word.inspect,lookahead.inspect]} > "This" "is" > "is" "a" > "a" "big" > "big" "list" > "list" "of" > "of" "words" > "words" nil > => nil > > Putting the << nil gives the last word something to be spit out of the > each_cons with. > > -Rob > > Rob Biedenharn http://agileconsultingllc.com > Rob@AgileConsultingLLC.com > > > -- http://www.coreyhaines.com The Internet's Premiere source of information about Corey Haines ------=_Part_540_28167855.1201993256219--