るりまサーチ

最速Rubyリファレンスマニュアル検索!
176件ヒット [1-100件を表示] (0.135秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:p[x] > クエリ:@[x] > クラス:MatchData[x]

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. dh p
  5. rsa p

ライブラリ

キーワード

検索結果

<< 1 2 > >>

MatchData#captures -> [String] (6120.0)

$1, $2, ... を格納した配列を返します。

...す。

MatchData
#to_a と異なり $& を要素に含みません。
グループにマッチした部分文字列がなければ対応する要素は nil になります。

//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.to_a # => ["foobar", "foo", "bar", nil]
p
$~.captures #...
...=> ["foo", "bar", nil]
//}

@
see MatchData#to_a, MatchData#named_captures...
...=> ["foo", "bar", nil]
//}

@
see MatchData#to_a, MatchData#named_captures, d:spec/pattern_matching#matching_non_primitive_objects...

MatchData#named_captures -> Hash (6114.0)

名前付きキャプチャをHashで返します。

...

@
param symbolize_names 真を指定するとハッシュのキーを文字列ではなくシンボルにします。デフォルトは偽です。

//emlist[例][ruby]{
m = /(?<a>.)(?<b>.)/.match("01")
m.named_captures # => {"a" => "0", "b" => "1"}

m = /(?<a>.)(?<b>.)?/.match("0")
m.named_capture...
...s # => {"a" => "0", "b" => nil}

m = /(?<a>.)(?<a>.)/.match("01")
m.named_captures # => {"a" => "1"}

m = /(?<a>x)|(?<a>y)/.match("x")
m.named_captures # => {"a" => "x"}
//}

@
see MatchData#captures...
...s # => {"a" => "0", "b" => nil}

m = /(?<a>.)(?<a>.)/.match("01")
m.named_captures # => {"a" => "1"}

m = /(?<a>x)|(?<a>y)/.match("x")
m.named_captures # => {"a" => "x"}
//}

@
see MatchData#captures, MatchData#deconstruct_keys...

MatchData#named_captures(symbolize_names: false) -> Hash (6114.0)

名前付きキャプチャをHashで返します。

...

@
param symbolize_names 真を指定するとハッシュのキーを文字列ではなくシンボルにします。デフォルトは偽です。

//emlist[例][ruby]{
m = /(?<a>.)(?<b>.)/.match("01")
m.named_captures # => {"a" => "0", "b" => "1"}

m = /(?<a>.)(?<b>.)?/.match("0")
m.named_capture...
...", "b" => nil}

m = /(?<a>.)(?<a>.)/.match("01")
m.named_captures # => {"a" => "1"}

m = /(?<a>x)|(?<a>y)/.match("x")
m.named_captures # => {"a" => "x"}

m = /(?<a>.)(?<a>.)/.match("01")
m.named_captures(symbolize_names: true) #=> {:a => "1"}
//}

@
see MatchData#captures, MatchData#deconstruct_keys...

MatchData#post_match -> String (6114.0)

マッチした部分より後ろの文字列を返します($'と同じ)。

...マッチした部分より後ろの文字列を返します($'と同じ)。

//emlist[例][ruby]{
/(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.post_match # => "baz"
//}

@
see MatchData#pre_match...

MatchData#pre_match -> String (6114.0)

マッチした部分より前の文字列を返します($`と同じ)。

...マッチした部分より前の文字列を返します($`と同じ)。

//emlist[例][ruby]{
/(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.pre_match # => "foo"
//}

@
see MatchData#post_match...

絞り込み条件を変える

MatchData#deconstruct -> [String] (3020.0)

$1, $2, ... を格納した配列を返します。

...す。

MatchData
#to_a と異なり $& を要素に含みません。
グループにマッチした部分文字列がなければ対応する要素は nil になります。

//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.to_a # => ["foobar", "foo", "bar", nil]
p
$~.captures #...
...=> ["foo", "bar", nil]
//}

@
see MatchData#to_a, MatchData#named_captures, d:spec/pattern_matching#matching_non_primitive_objects...

MatchData#byteoffset(name) -> [Integer, Integer] | [nil, nil] (59.0)

name という名前付きグループに対応する部分文字列のバイト単位のオフセットの 配列 [start, end] を返します。

...

@
param name 名前(シンボルか文字列)

@
raise IndexError 正規表現中で定義されていない name を指定した場合に発生します。

//emlist[例][ruby]{
/(?<year>\d{4})年(?<month>\d{1,2})月(?:(?<day>\d{1,2})日)?/ =~ "2021年1月"
p
$~.byteoffset('year') # => [0, 4]
p
...
...$~.byteoffset(:year) # => [0, 4]
p
$~.byteoffset('month') # => [7, 8]
p
$~.byteoffset(:month) # => [7, 8]
p
$~.byteoffset('day') # => [nil, nil]
p
$~.byteoffset('century') # => `offset': undefined group name reference: century (IndexError)
//}

@
see MatchData#offset...

MatchData#offset(name) -> [Integer, Integer] | [nil, nil] (59.0)

name という名前付きグループに対応する部分文字列のオフセットの配列 [start, end] を返 します。

...

@
param name 名前(シンボルか文字列)

@
raise IndexError 正規表現中で定義されていない name を指定した場合に発生します。

//emlist[例][ruby]{
/(?<year>\d{4})年(?<month>\d{1,2})月(?:(?<day>\d{1,2})日)?/ =~ "2021年1月"
p
$~.offset('year') # => [0, 4]
p
$...
...~.offset(:year) # => [0, 4]
p
$~.offset('month') # => [5, 6]
p
$~.offset(:month) # => [5, 6]
p
$~.offset('day') # => [nil, nil]
p
$~.offset('century') # => `offset': undefined group name reference: century (IndexError)
//}

@
see MatchData#begin, MatchData#end...
...~.offset(:year) # => [0, 4]
p
$~.offset('month') # => [5, 6]
p
$~.offset(:month) # => [5, 6]
p
$~.offset('day') # => [nil, nil]
p
$~.offset('century') # => `offset': undefined group name reference: century (IndexError)
//}

@
see MatchData#begin, MatchData#end, MatchData#offset...

MatchData#[](n) -> String | nil (56.0)

n 番目の部分文字列を返します。

...返します。

@
param n 返す部分文字列のインデックスを指定します。

//emlist[例][ruby]{
/(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"
//}...

MatchData#begin(n) -> Integer | nil (50.0)

n 番目の部分文字列先頭のオフセットを返します。

...ます。

@
param n 部分文字列を指定する数値。

@
raise IndexError 範囲外の n を指定した場合に発生します。

//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.begin(0) # => 0
p
$~.begin(1) # => 0
p
$~.begin(2) # => 3
p
$~.begin(3) # => nil
p
$~.begin(4)...
...# => `begin': index 4 out of matches (IndexError)
//}

@
see MatchData#end...

絞り込み条件を変える

MatchData#end(n) -> Integer | nil (50.0)

n 番目の部分文字列終端のオフセットを返します。

...返します。

@
param n 部分文字列を指定する数値。

@
raise IndexError 範囲外の n を指定した場合に発生します。

//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p
$~.end(0) # => 6
p
$~.end(1) # => 3
p
$~.end(2) # => 6
p
$~.end(3) # => nil
p
$~.end(4) #...
...=> `end': index 4 out of matches (IndexError)
//}

@
see MatchData#begin...
<< 1 2 > >>