Chronicべんり。別に最近のものでもないのだけど、しらなかった。 それまではActiveSupportで頑張っていた。 require 'active_support/core_ext/object' require 'date' def parse_date_str(date_str) case date_str when /^yesterday$/i then 1.day.ago when /^today$/i then 0.day.ago when /^tomorrow$/i then 1.day.since when /^[0-9]+[\.\s](?:days?|weeks?|months?|years?)[\.\s](?:ago|since)$/i eval(date_str.gsub(/\s+/, '.')) else Date.parse(date_str) end.to