From f3ba845deb749e9915bbba7e4b0d2de4ab424490 Mon Sep 17 00:00:00 2001 From: jeg2 <jeg2@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> Date: Tue, 23 Sep 2008 14:40:24 +0000 Subject: [PATCH] * lib/csv/csv.rb: Improved the idea of whitespace and word characters used in substitutions during header conversion as suggested by Michael Selig. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ lib/csv.rb | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index b17e23f2e0..8c9eca458f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Tue Sep 23 23:39:25 2008 James Edward Gray II <jeg2@ruby-lang.org> + + * lib/csv/csv.rb: Improved the idea of whitespace and word characters used + in substitutions during header conversion as suggested by Michael Selig. + Tue Sep 23 21:50:53 2008 Tanaka Akira <akr@fsij.org> * io.c (io_binwrite): allocate wbuf if nosync. diff --git a/lib/csv.rb b/lib/csv.rb index dccee6cbe8..ccfa6ab42f 100644 --- a/lib/csv.rb +++ b/lib/csv.rb @@ -199,7 +199,7 @@ require "stringio" # class CSV # The version of the installed library. - VERSION = "2.4.0".freeze + VERSION = "2.4.1".freeze # # A CSV::Row is part Array and part Hash. It retains an order for the fields @@ -933,8 +933,8 @@ class CSV HeaderConverters = { :downcase => lambda { |h| h.encode(ConverterEncoding).downcase }, :symbol => lambda { |h| - h.encode(ConverterEncoding). - downcase.tr(" ", "_").delete("^a-z0-9_").to_sym + h.encode(ConverterEncoding).downcase.gsub(/\s+/, "_"). + gsub(/\W+/, "").to_sym } }