--- self[n]

    n ܤʬʸ֤ޤ0 ϥޥåΤ̣ޤ
    n ͤλˤΥǥåȸ路ޤ(
    Ǥ -1 )n ܤǤ¸ߤʤˤ nil 
    ֤ޤ

        /(foo)(bar)(BAZ)?/ =~ "foobarbaz"
        p $~.to_a       # => ["foobar", "foo", "bar", nil]
        p $~[0]         # => "foobar"
        p $~[1]         # => "foo"
        p $~[2]         # => "bar"
        p $~[3]         # => nil        (ޥåƤʤ)
        p $~[4]         # => nil        (ϰϳ)
        p $~[-2]        # => "bar"

--- self[start..end]

    Array#[start..end] [Array/[start..end]] ƱǤ

        /(foo)(bar)/ =~ "foobarbaz"
        p $~[0..2]      # => ["foobar", "foo", "bar"]

--- self[start, length]

    Array#[start, length] [Array/[start, length]] ƱǤ

        /(foo)(bar)/ =~ "foobarbaz"
        p $~[0, 3]      # => ["foobar", "foo", "bar"]

