> -----Original Message----- > From: Josh Charles [mailto:josh.charles / gmail.com] > Sent: Thursday, September 01, 2005 9:06 AM > To: ruby-talk ML > Subject: palindrome finder > > > I've been working on this piece of code and it's starting to > drive me crazy. I think it's a problem with reference vs > value type, but I'm not sure. I'm just writing a simple > program to process a list of words and print out all the > palindromes (words that read the same forward and backward) > > Here is my code: > > file = File.open("testdict.txt", "r" ) do |file| > file.each_line("\n") do |line| > #filelist.push( line ) > line.downcase! > if (line == line.reverse) > puts line > end > end > end > > I've made sure each line is being read properly, and it is. > The if statement never returns true, however. I'm new to > ruby, so I'm probably just doing something really stupid, but > I can't figure it out yet. That can be shortened to: IO.foreach("testdict.txt"){ |line| line.downcase!.chomp! puts line if line == line.reverse? } Note the chomp! Regards, Dan