From: Robert Klemme Date: 2009-02-20T23:33:24+09:00 Subject: Re: Dynamic string (depending on a variable) 2009/2/19 Dylan Evans : > sentence = "Your ticket expired " + (nb_of_days>0? nb_of_days.to_s + " days > ago." : "today.") irb(main):009:0> nb_of_days = 0 => 0 irb(main):010:0> sentence = 'Your ticket expired ' << (nb_of_days == 0 ? 'today' : "#{nb_of_days} days ago") << '.' => "Your ticket expired today." irb(main):011:0> nb_of_days = 5 => 5 irb(main):012:0> sentence = 'Your ticket expired ' << (nb_of_days == 0 ? 'today' : "#{nb_of_days} days ago") << '.' => "Your ticket expired 5 days ago." Or even 15:33:12 Temp$ ruby exp.rb Your ticket expired today. Your ticket expired yesterday. Your ticket expired 2 days ago. Your ticket expired 3 days ago. Your ticket expired 4 days ago. Your ticket expired 5 days ago. 15:33:14 Temp$ cat exp.rb (0..5).each do |nb_of_days| sentence = 'Your ticket expired ' << case nb_of_days when 0: 'today' when 1: 'yesterday' else "#{nb_of_days} days ago" end << '.' puts sentence end 15:33:19 Temp$ Kind regards robert -- remember.guy do |as, often| as.you_can - without end