From 0977fe17053680310cb0611e9ad2df705d05a070 Mon Sep 17 00:00:00 2001 From: akr Date: Sat, 29 Mar 2003 06:39:50 +0000 Subject: * instruby.rb, ext/extmk.rb, lib/benchmark.rb, lib/cgi.rb, lib/debug.rb, lib/getoptlong.rb, lib/optparse.rb, lib/time.rb, lib/date/format.rb, lib/irb/ruby-lex.rb lib/uri/common.rb: revert escape for `-' in character class. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3634 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 7 +++++++ ext/extmk.rb | 2 +- instruby.rb | 2 +- lib/benchmark.rb | 14 +++++++------- lib/cgi.rb | 2 +- lib/date/format.rb | 20 ++++++++++---------- lib/debug.rb | 2 +- lib/getoptlong.rb | 2 +- lib/irb/ruby-lex.rb | 2 +- lib/optparse.rb | 12 ++++++------ lib/time.rb | 8 ++++---- lib/uri/common.rb | 8 ++++---- 12 files changed, 44 insertions(+), 37 deletions(-) diff --git a/ChangeLog b/ChangeLog index bc27765f61..8f768b2f57 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Sat Mar 29 15:19:48 2003 Tanaka Akira + + * instruby.rb, ext/extmk.rb, lib/benchmark.rb, lib/cgi.rb, + lib/debug.rb, lib/getoptlong.rb, lib/optparse.rb, lib/time.rb, + lib/date/format.rb, lib/irb/ruby-lex.rb lib/uri/common.rb: revert + escape for `-' in character class. + Sat Mar 29 09:48:35 2003 Yukihiro Matsumoto * eval.c (avalue_to_svalue): use rb_check_array_type() again. diff --git a/ext/extmk.rb b/ext/extmk.rb index 326310c47f..06a9fd50fc 100644 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -127,7 +127,7 @@ def parse_args() $mflags = Shellwords.shellwords(mflags) if arg = $mflags.first - arg.insert(0, '-') if /\A[^\-][^=]*\Z/ =~ arg + arg.insert(0, '-') if /\A[^-][^=]*\Z/ =~ arg end $make, *rest = Shellwords.shellwords($make) diff --git a/instruby.rb b/instruby.rb index 30362c5da3..fc35948bf7 100644 --- a/instruby.rb +++ b/instruby.rb @@ -25,7 +25,7 @@ def parse_args() $mflags = Shellwords.shellwords(mflags) if arg = $mflags.first - arg.insert(0, '-') if /\A[^\-][^=]*\Z/ =~ arg + arg.insert(0, '-') if /\A[^-][^=]*\Z/ =~ arg end $make, *rest = Shellwords.shellwords($make) diff --git a/lib/benchmark.rb b/lib/benchmark.rb index 97573d2a13..16c4cb611a 100644 --- a/lib/benchmark.rb +++ b/lib/benchmark.rb @@ -577,13 +577,13 @@ module Benchmark def format(arg0 = nil, *args) fmtstr = (arg0 || FMTSTR).dup - fmtstr.gsub!(/(%[\-+\.\d]*)n/){"#{$1}s" % label} - fmtstr.gsub!(/(%[\-+\.\d]*)u/){"#{$1}f" % utime} - fmtstr.gsub!(/(%[\-+\.\d]*)y/){"#{$1}f" % stime} - fmtstr.gsub!(/(%[\-+\.\d]*)U/){"#{$1}f" % cutime} - fmtstr.gsub!(/(%[\-+\.\d]*)Y/){"#{$1}f" % cstime} - fmtstr.gsub!(/(%[\-+\.\d]*)t/){"#{$1}f" % total} - fmtstr.gsub!(/(%[\-+\.\d]*)r/){"(#{$1}f)" % real} + fmtstr.gsub!(/(%[-+\.\d]*)n/){"#{$1}s" % label} + fmtstr.gsub!(/(%[-+\.\d]*)u/){"#{$1}f" % utime} + fmtstr.gsub!(/(%[-+\.\d]*)y/){"#{$1}f" % stime} + fmtstr.gsub!(/(%[-+\.\d]*)U/){"#{$1}f" % cutime} + fmtstr.gsub!(/(%[-+\.\d]*)Y/){"#{$1}f" % cstime} + fmtstr.gsub!(/(%[-+\.\d]*)t/){"#{$1}f" % total} + fmtstr.gsub!(/(%[-+\.\d]*)r/){"(#{$1}f)" % real} arg0 ? Kernel::format(fmtstr, *args) : fmtstr end diff --git a/lib/cgi.rb b/lib/cgi.rb index de40b17e44..2e18bfd20d 100644 --- a/lib/cgi.rb +++ b/lib/cgi.rb @@ -236,7 +236,7 @@ class CGI url_encoded_string = CGI::escape("string") =end def CGI::escape(string) - string.gsub(/([^ a-zA-Z0-9_.\-]+)/n) do + string.gsub(/([^ a-zA-Z0-9_.-]+)/n) do '%' + $1.unpack('H2' * $1.size).join('%').upcase end.tr(' ', '+') end diff --git a/lib/date/format.rb b/lib/date/format.rb index 2d5de09220..10283988fc 100644 --- a/lib/date/format.rb +++ b/lib/date/format.rb @@ -80,7 +80,7 @@ class Date when '%F' return unless __strptime(str, '%Y-%m-%d', elem) when '%G' - return unless str.sub!(/\A([\-+]?\d+)/o, '') + return unless str.sub!(/\A([-+]?\d+)/o, '') val = $1.to_i elem[:cwyear] = val when '%g' @@ -163,7 +163,7 @@ class Date when '%x' return unless __strptime(str, '%m/%d/%y', elem) when '%Y' - return unless str.sub!(/\A([\-+]?\d+)/o, '') + return unless str.sub!(/\A([-+]?\d+)/o, '') val = $1.to_i elem[:year] = val when '%y' @@ -173,7 +173,7 @@ class Date elem[:year] = val elem[:cent] ||= if val >= 69 then 19 else 20 end when '%Z', '%z' - return unless str.sub!(/\A([a-z0-9:+\-]+(?:\s+dst\b)?)/io, '') + return unless str.sub!(/\A([a-z0-9:+-]+(?:\s+dst\b)?)/io, '') val = $1 elem[:zone] = val offset = zone_to_diff(val) @@ -227,7 +227,7 @@ class Date def self._parse(str, comp=false) str = str.dup - str.gsub!(/[^\-+.\/:0-9a-z]+/ino, ' ') + str.gsub!(/[^.\/:0-9a-z+-]+/ino, ' ') # day if str.sub!(/(#{PARSE_DAYPAT})\S*/ino, ' ') @@ -246,7 +246,7 @@ class Date ( [a-z]+(?:\s+dst)?\b | - [\-+]\d+(?::?\d+) + [-+]\d+(?::?\d+) ) )? /inox, @@ -308,7 +308,7 @@ class Date end # iso - elsif str.sub!(/([\-+]?\d+)-(\d+)-(-?\d+)/no, ' ') + elsif str.sub!(/([-+]?\d+)-(\d+)-(-?\d+)/no, ' ') year = $1.to_i mon = $2.to_i mday = $3.to_i @@ -332,7 +332,7 @@ class Date mday = $4.to_i # vms - elsif str.sub!(/(-?\d+)-(#{PARSE_MONTHPAT})[^\-]*-(-?\d+)/ino, ' ') + elsif str.sub!(/(-?\d+)-(#{PARSE_MONTHPAT})[^-]*-(-?\d+)/ino, ' ') mday = $1.to_i mon = ABBR_MONTHS[$2.downcase] year = $3.to_i @@ -363,7 +363,7 @@ class Date # ddd elsif str.sub!( - /([\-+]?)(\d{4,14}) + /([-+]?)(\d{4,14}) (?: \s* T? @@ -375,7 +375,7 @@ class Date ( Z | - [\-+]\d{2,4} + [-+]\d{2,4} ) \b )? @@ -444,7 +444,7 @@ class Date if ZONES.include?(abb) offset = ZONES[abb] offset += 3600 if dst - elsif /\A([+\-])(\d{2}):?(\d{2})?\Z/no =~ str + elsif /\A([+-])(\d{2}):?(\d{2})?\Z/no =~ str offset = $2.to_i * 3600 + $3.to_i * 60 offset *= -1 if $1 == '-' end diff --git a/lib/debug.rb b/lib/debug.rb index 9d49fafac7..8f2999a3ab 100644 --- a/lib/debug.rb +++ b/lib/debug.rb @@ -425,7 +425,7 @@ class Context b = previous_line ? previous_line - 10 : binding_line - 5 e = b + 9 else - b, e = $1.split(/[\-,]/) + b, e = $1.split(/[-,]/) if e b = b.to_i e = e.to_i diff --git a/lib/getoptlong.rb b/lib/getoptlong.rb index 53badc43f3..9c8ed09db9 100644 --- a/lib/getoptlong.rb +++ b/lib/getoptlong.rb @@ -180,7 +180,7 @@ class GetoptLong # next if i == argument_flag begin - if !i.is_a?(String) || i !~ /^-([^\-]|-.+)$/ + if !i.is_a?(String) || i !~ /^-([^-]|-.+)$/ raise ArgumentError, "an invalid option `#{i}'" end if (@canonical_names.include?(i)) diff --git a/lib/irb/ruby-lex.rb b/lib/irb/ruby-lex.rb index 80d392a492..26b0b3b7c2 100644 --- a/lib/irb/ruby-lex.rb +++ b/lib/irb/ruby-lex.rb @@ -948,7 +948,7 @@ class RubyLex allow_point = false when allow_e && "e", allow_e && "E" type = TkFLOAT - if peek(0) =~ /[+\-]/ + if peek(0) =~ /[+-]/ getc end allow_e = false diff --git a/lib/optparse.rb b/lib/optparse.rb index fcd6a881c5..dfda6b2595 100644 --- a/lib/optparse.rb +++ b/lib/optparse.rb @@ -1346,14 +1346,14 @@ Default options, which never appear in option summary. hex = 'x[\da-f]+(?:_[\da-f]+)*' octal = "0(?:[0-7]*(?:_[0-7]+)*|#{binary}|#{hex})" integer = "#{octal}|#{decimal}" - accept(Integer, %r"\A[\-+]?(?:#{integer})"io) {|s| Integer(s) if s} + accept(Integer, %r"\A[-+]?(?:#{integer})"io) {|s| Integer(s) if s} =begin : Float Float number format, and converts to (({Float})). =end #'#"#`# - float = "(?:#{decimal}(?:\\.(?:#{decimal})?)?|\\.#{decimal})(?:E[\\-+]?#{decimal})?" - floatpat = %r"\A[\-+]?#{float}"io + float = "(?:#{decimal}(?:\\.(?:#{decimal})?)?|\\.#{decimal})(?:E[-+]?#{decimal})?" + floatpat = %r"\A[-+]?#{float}"io accept(Float, floatpat) {|s| s.to_f if s} =begin @@ -1361,13 +1361,13 @@ Default options, which never appear in option summary. Generic numeric format, and converts to (({Integer})) for integer format, (({Float})) for float format. =end #'#"#`# - accept(Numeric, %r"\A[\-+]?(?:#{octal}|#{float})"io) {|s| eval(s) if s} + accept(Numeric, %r"\A[-+]?(?:#{octal}|#{float})"io) {|s| eval(s) if s} =begin : OptionParser::DecimalInteger Decimal integer format, to be converted to (({Integer})). =end #'#"#`# - DecimalInteger = /\A[\-+]?#{decimal}/io + DecimalInteger = /\A[-+]?#{decimal}/io accept(DecimalInteger) {|s| s.to_i if s} =begin @@ -1375,7 +1375,7 @@ Default options, which never appear in option summary. Ruby/C like octal/hexadecimal/binary integer format, to be converted to (({Integer})). =end #'#"#`# - OctalInteger = /\A[\-+]?(?:[0-7]+(?:_[0-7]+)*|0(?:#{binary}|#{hex}))/io + OctalInteger = /\A[-+]?(?:[0-7]+(?:_[0-7]+)*|0(?:#{binary}|#{hex}))/io accept(OctalInteger) {|s| s.oct if s} =begin diff --git a/lib/time.rb b/lib/time.rb index 4c9d8a526e..043257a4d1 100644 --- a/lib/time.rb +++ b/lib/time.rb @@ -69,9 +69,9 @@ class Time def zone_offset(zone, year=Time.now.year) off = nil zone = zone.upcase - if /\A([\-+])(\d\d):?(\d\d)\z/ =~ zone + if /\A([+-])(\d\d):?(\d\d)\z/ =~ zone off = ($1 == '-' ? -1 : 1) * ($2.to_i * 60 + $3.to_i) * 60 - elsif /\A[\-+]\d\d\z/ =~ zone + elsif /\A[+-]\d\d\z/ =~ zone off = zone.to_i * 3600 elsif ZoneOffset.include?(zone) off = ZoneOffset[zone] * 3600 @@ -191,7 +191,7 @@ class Time (\d{2})\s* :\s*(\d{2})\s* (?::\s*(\d{2}))?\s+ - ([+\-]\d{4}| + ([+-]\d{4}| UT|GMT|EST|EDT|CST|CDT|MST|MDT|PST|PDT|[A-IK-Z])/ix =~ date # Since RFC 2822 permit comments, the regexp has no right anchor. day = $1.to_i @@ -277,7 +277,7 @@ class Time T (\d\d):(\d\d):(\d\d) (\.\d*)? - (Z|[+\-]\d\d:\d\d)? + (Z|[+-]\d\d:\d\d)? \s*\z/ix =~ date datetime = [$1.to_i, $2.to_i, $3.to_i, $4.to_i, $5.to_i, $6.to_i] datetime << $7.to_f * 1000000 if $7 diff --git a/lib/uri/common.rb b/lib/uri/common.rb index e9b7ce9b0a..5d6a3b5519 100644 --- a/lib/uri/common.rb +++ b/lib/uri/common.rb @@ -31,7 +31,7 @@ module URI # mark = "-" | "_" | "." | "!" | "~" | "*" | "'" | # "(" | ")" # unreserved = alphanum | mark - UNRESERVED = "\\-_.!~*'()#{ALNUM}" + UNRESERVED = "-_.!~*'()#{ALNUM}" # reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | # "$" | "," # reserved = ";" | "/" | "?" | ":" | "@" | "&" | "=" | "+" | @@ -49,9 +49,9 @@ module URI FRAGMENT = "#{URIC}*" # domainlabel = alphanum | alphanum *( alphanum | "-" ) alphanum - DOMLABEL = "(?:[#{ALNUM}](?:[\\-#{ALNUM}]*[#{ALNUM}])?)" + DOMLABEL = "(?:[#{ALNUM}](?:[-#{ALNUM}]*[#{ALNUM}])?)" # toplabel = alpha | alpha *( alphanum | "-" ) alphanum - TOPLABEL = "(?:[#{ALPHA}](?:[\\-#{ALNUM}]*[#{ALNUM}])?)" + TOPLABEL = "(?:[#{ALPHA}](?:[-#{ALNUM}]*[#{ALNUM}])?)" # hostname = *( domainlabel "." ) toplabel [ "." ] HOSTNAME = "(?:#{DOMLABEL}\\.)*#{TOPLABEL}\\.?" @@ -119,7 +119,7 @@ module URI REL_SEGMENT = "(?:[#{UNRESERVED};@&=+$,]|#{ESCAPED})+" # scheme = alpha *( alpha | digit | "+" | "-" | "." ) - SCHEME = "[#{ALPHA}][\\-+.#{ALPHA}\\d]*" + SCHEME = "[#{ALPHA}][-+.#{ALPHA}\\d]*" # abs_path = "/" path_segments ABS_PATH = "/#{PATH_SEGMENTS}" -- cgit v1.2.3