end(n) -> Integer | nil[permalink][rdoc][edit]-
n番目の部分文字列終端のオフセットを返します。0はマッチ全体を意味します。n番目の部分文字列がマッチしていなければnilを返します。- [PARAM]
n: - 部分文字列を指定する数値。
- [EXCEPTION]
IndexError: -
範囲外の
nを指定した場合に発生します。
/(foo)(bar)(BAZ)?/ =~ "foobarbaz" p $~.end(0) # => 6 p $~.end(1) # => 3 p $~.end(2) # => 6 p $~.end(3) # => nil p $~.end(4) # ~> IndexError: index 4 out of matches[SEE_ALSO] MatchData#begin
- [PARAM]
end(name) -> Integer | nil[permalink][rdoc][edit]-
nameという名前付きグループの部分文字列終端のオフセットを返します。nameの名前付きグループがマッチしていなければnilを返します。- [PARAM]
name: - 名前(シンボルか文字列)
- [EXCEPTION]
IndexError: -
正規表現中で定義されていない
nameを指定した場合に発生します。
/(?<year>\d{4})年(?<month>\d{1,2})月(?:(?<day>\d{1,2})日)?/ =~ "2021年1月" p $~.end('year') # => 4 p $~.end(:year) # => 4 p $~.end('month') # => 6 p $~.end(:month) # => 6 p $~.end('day') # => nil p $~.end('century') # ~> IndexError: undefined group name reference: century[SEE_ALSO] MatchData#begin
- [PARAM]