ruby-reference-manual:2706
From: Nobuhiro IMAI <nov@y...>
Date: Thu, 9 Jun 2011 21:41:37 +0900
Subject: [ruby-reference-manual:2706] [るりまプロジェクト - Bug #4857][Assigned] String#[range]
Issue #4857 has been reported by Nobuhiro IMAI. ---------------------------------------- Bug #4857: String#[range] http://redmine.ruby-lang.org/issues/4857 Author: Nobuhiro IMAI Status: Assigned Priority: Normal Assignee: Nobuhiro IMAI Category: doc Target version: reporter: ruby_version: https://twitter.com/#!/masuidrive/status/78736550590029824 https://twitter.com/#!/yukihiro_matz/status/78743935467536384 https://twitter.com/#!/no6v/status/78749572842790912 https://twitter.com/#!/yukihiro_matz/status/78751761661313024 と言う訳で、例を修正・追加して、説明から不要な条件を削除しようと思います。 問題があるようならご指摘ください。 diff --git a/refm/api/src/_builtin/String b/refm/api/src/_builtin/String index f49f228..e00018a 100644 --- a/refm/api/src/_builtin/String +++ b/refm/api/src/_builtin/String @@ -574,8 +574,7 @@ range range.last が文字列の長さ以上のときは (文字列の長さ - 1) を指定したものとみなされます。 -range.first が 0 より小さいか文字列の長さより大きいとき、 -および range.first > range.last + 1 であるときは nil を +range.first が 0 より小さいか文字列の長さより大きいときは nil を 返します。ただし range.first および range.last のどちらか または両方が負の数のときは一度だけ文字列の長さを足して 再試行します。 @@ -593,7 +592,8 @@ range.first 'abcd'[ 1 .. 2] # => "bc" 'abcd'[ 2 .. 2] # => "c" 'abcd'[ 3 .. 2] # => "" - 'abcd'[ 4 .. 2] # => nil + 'abcd'[ 4 .. 2] # => "" + 'abcd'[ 5 .. 2] # => nil 'abcd'[-3 .. 2] # => "bc" 'abcd'[-4 .. 2] # => "abc" @@ -613,8 +613,7 @@ range.first range.last が文字列の長さよりも大きいときは文字列の長さを 指定したものとみなされます。 -range.first が 0 より小さいか文字列の長さより大きいとき、 -および range.first > range.last であるときは nil を返します。 +range.first が 0 より小さいか文字列の長さより大きいときは nil を返します。 ただし range.first と range.last のどちらかまたは両方が負の数 であるときは一度だけ文字列の長さを足して再試行します。 @@ -625,7 +624,9 @@ range.first 'abcd'[ 1 ... 2] # => "b" 'abcd'[ 2 ... 2] # => "" - 'abcd'[ 3 ... 2] # => nil + 'abcd'[ 3 ... 2] # => "" + 'abcd'[ 4 ... 2] # => "" + 'abcd'[ 5 ... 2] # => nil 'abcd'[-3 ... 2] # => "b" 'abcd'[-4 ... 2] # => "ab" -- http://redmine.ruby-lang.org -- ML: ruby-reference-manual@m... Info: http://QuickML.com/
-> 2706 2011-06-09 14:41 [nov@y... ] [るりまプロジェクト - Bug #4857][Assigned] String#[range] 2707 2011-06-09 17:38 ┗[okkez000@g... ] 2708 2011-06-09 17:58 ┗[nov@y... ] 2709 2011-06-09 18:21 ┗[okkez000@g... ]