1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

1.1b9_05_pre1

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/v1_1r@138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
matz 1998-03-26 09:09:41 +00:00
parent cdde29b924
commit fbbd5539ae
10 changed files with 32 additions and 21 deletions

View file

@ -11,11 +11,11 @@ class String
alias original_succ succ
private :original_succ
def mbchar?(c)
def mbchar?
if $KCODE =~ /^s/i
c =~ /[\x81-\x9f\xe0-\xef][\x40-\x7e\x80-\xfc]/n
self =~ /[\x81-\x9f\xe0-\xef][\x40-\x7e\x80-\xfc]/n
elsif $KCODE =~ /^e/i
c =~ /[\xa1-\xfe][\xa1-\xfe]/n
self =~ /[\xa1-\xfe][\xa1-\xfe]/n
else
FALSE
end
@ -25,7 +25,7 @@ class String
if self[-2] && self[-2] & 0x80 != 0
s = self.dup
s[-1] += 1
s[-1] += 1 if !mbchar?(s)
s[-1] += 1 if !s.mbchar?
return s
else
original_succ
@ -42,7 +42,7 @@ class String
if self[0..-2] == to[0..-2]
first = self[-2].chr
for c in self[-1] .. to[-1]
if mbchar?(first+c.chr)
if first+c.chr.mbchar?
yield self[0..-2]+c.chr
end
end