From a15fe4d1f2e17830a037bb029c4578f1555d5eba Mon Sep 17 00:00:00 2001 From: tadf Date: Sat, 5 Aug 2006 04:55:00 +0000 Subject: "%\n" means "\n". git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@10683 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/date/format.rb | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) (limited to 'lib') diff --git a/lib/date/format.rb b/lib/date/format.rb index 52eecaf2a2..04fadd84a2 100644 --- a/lib/date/format.rb +++ b/lib/date/format.rb @@ -1,4 +1,4 @@ -# format.rb: Written by Tadayoshi Funaba 1999-2005 +# format.rb: Written by Tadayoshi Funaba 1999-2006 # $Id: format.rb,v 2.15 2005-02-06 13:28:48+09 tadf Exp $ require 'rational' @@ -52,7 +52,7 @@ class Date def self.__strptime(str, fmt, elem) fmt.scan(/%[EO]?.|./mo) do |c| - cc = c.sub(/\A%[EO]?(.)\Z/o, '%\\1') + cc = c.sub(/\A%[EO]?(.)\z/mo, '%\\1') case cc when /\A\s/o str.sub!(/\A[\s\v]+/o, '') @@ -213,6 +213,8 @@ class Date warn("warning: %3 is deprecated; use '%F'") end return unless __strptime(str, '%F', elem) + when /\A%(.)/m + return unless str.sub!(Regexp.new('\\A' + Regexp.quote($1)), '') else return unless str.sub!(Regexp.new('\\A' + Regexp.quote(c)), '') end @@ -491,7 +493,7 @@ class Date def strftime(fmt='%F') o = '' fmt.scan(/%[EO]?.|./mo) do |c| - cc = c.sub(/^%[EO]?(.)$/o, '%\\1') + cc = c.sub(/\A%[EO]?(.)\z/mo, '%\\1') case cc when '%A'; o << DAYNAMES[wday] when '%a'; o << ABBR_DAYNAMES[wday] @@ -571,7 +573,10 @@ class Date warn("warning: %3 is deprecated; use '%F'") end o << strftime('%F') - else; o << c + when /\A%(.)/m + o << $1 + else + o << c end end o -- cgit v1.2.3