るりまサーチ

最速Rubyリファレンスマニュアル検索!
240件ヒット [1-100件を表示] (0.092秒)
トップページ > クエリ:p[x] > クエリ:d[x] > クラス:MatchData[x]

別のキーワード

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

ライブラリ

キーワード

検索結果

<< 1 2 3 > >>

MatchData#named_captures -> Hash (12201.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 (12201.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#regexp -> Regexp (9201.0)

自身の元になった正規表現オブジェクトを返します。

...自身の元になった正規表現オブジェクトを返します。

//emlist[例][ruby]{
m = /a.*b/.match("abc")
m.regexp # => /a.*b/
//}...

MatchData#captures -> [String] (9119.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#deconstruct -> [String] (9119.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#captures -> [String] (9113.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...

MatchData#post_match -> String (9107.0)

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

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

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

@see MatchData#pre_match...

MatchData#pre_match -> String (9107.0)

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

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

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

@see MatchData#post_match...

MatchData#inspect -> String (9101.0)

self の内容を人間に読みやすい文字列にして返します。

...ruby]{
p
uts /.$/.match("foo").inspect
# => #<MatchData "o">

p
uts /(.)(.)(.)/.match("foo").inspect
# => #<MatchData "foo" 1:"f" 2:"o" 3:"o">

p
uts /(.)(.)?(.)/.match("fo").inspect
# => #<MatchData "fo" 1:"f" 2:nil 3:"o">

p
uts /(?<foo>.)(?<bar>.)(?<baz>.)/.match("hoge").inspect
# => #<MatchData "hog...

MatchData#byteend(n) -> Integer | nil (6137.0)

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

...トオフセットを返します。

@param n 部分文字列を指定する数値。
@param name 名前付きキャプチャを指定する文字列またはシンボル。

@raise IndexError 範囲外の n を指定した場合に発生します。
@raise IndexError 正規表現中で定義され...
.../(c).*(いう).*(e.*)/ =~ 'abcあいうdef'
p
$~ # => #<MatchData "cあいうdef" 1:"c" 2:"いう" 3:"ef">
p
$~.byteend(0) # => 15
p
$~.byteend(1) # => 3
p
$~.byteend(2) # => 12
p
$~.byteend(3) # => 15
p
$~.byteend(4) # => index 4 out of matches (IndexError)
//}

//emlist[シンボルを...
...指定する例][ruby]{
/(?<key>\S+):\s*(?<value>\S+)/ =~ "name: ruby"
$~ # => #<MatchData "name: ruby" key:"name" value:"ruby">
$~.byteend(:key) # => 4
$~.byteend(:value) # => 10
$~.byteend(:foo) # => undefined group name reference: foo (IndexError)
//}...

絞り込み条件を変える

MatchData#byteend(name) -> Integer | nil (6137.0)

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

...トオフセットを返します。

@param n 部分文字列を指定する数値。
@param name 名前付きキャプチャを指定する文字列またはシンボル。

@raise IndexError 範囲外の n を指定した場合に発生します。
@raise IndexError 正規表現中で定義され...
.../(c).*(いう).*(e.*)/ =~ 'abcあいうdef'
p
$~ # => #<MatchData "cあいうdef" 1:"c" 2:"いう" 3:"ef">
p
$~.byteend(0) # => 15
p
$~.byteend(1) # => 3
p
$~.byteend(2) # => 12
p
$~.byteend(3) # => 15
p
$~.byteend(4) # => index 4 out of matches (IndexError)
//}

//emlist[シンボルを...
...指定する例][ruby]{
/(?<key>\S+):\s*(?<value>\S+)/ =~ "name: ruby"
$~ # => #<MatchData "name: ruby" key:"name" value:"ruby">
$~.byteend(:key) # => 4
$~.byteend(:value) # => 10
$~.byteend(:foo) # => undefined group name reference: foo (IndexError)
//}...

MatchData#end(n) -> Integer | nil (6131.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...

MatchData#values_at(*index) -> [String] (3125.0)

正規表現中の n 番目の括弧にマッチした部分文字列の配列を返します。

...文字列全体を表します。

@param index インデックスを整数またはシンボル(名前付きキャプチャの場合)で 0 個以上指定します。

//emlist[例][ruby]{
m = /(foo)(bar)(baz)/.match("foobarbaz")
# same as m.to_a.values_at(...)
p
m.values_at(0, 1, 2, 3, 4) # =...
...> ["foobarbaz", "foo", "bar", "baz", nil]
p
m.values_at(-1, -2, -3, -4, -5) # => ["baz", "bar", "foo", nil, nil]

m = /(?<a>\d+) *(?<op>[+\-*\/]) *(?<b>\d+)/.match("1 + 2")
m.to_a # => ["1 + 2", "1", "+", "2"]
m.values_at(:a, :b, :op) # => ["1", "2", "+"]
//}

@see Array#values_at,...
<< 1 2 3 > >>