るりまサーチ (Ruby 2.7.0)

最速Rubyリファレンスマニュアル検索!
3件ヒット [1-3件を表示] (0.080秒)
トップページ > バージョン:2.7.0[x] > 種類:特異メソッド[x] > クラス:REXML::XPath[x]

ライブラリ

キーワード

検索結果

REXML::XPath.each(element, path = nil, namespaces = {}, variables = {}) {|e| ... } -> () (7.0)

element の path で指定した XPath 文字列にマッチする各ノード に対してブロックを呼び出します。

...変数名とその値の対応付け

//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root xmlns:x='1'>
<a>
<b>b1</b>
<x:c />
<b>b2</b>
<d />
</a>
<b> b3 </b>
</root>
EOS

REXML::XPath
.each(doc, "/root/a/b"){|e| p e.text }
# >> "b1"
# >> "b2"
//}...

REXML::XPath.first(element, path = nil, namespaces = {}, variables = {}) -> Node | nil (7.0)

element の path で指定した XPath 文字列にマッチする最初のノードを 返します。

...s[1] # => <a> ... </>
b1 = REXML::XPath.first(a, "b")
b1.text # => "b1"

REXML::XPath
.first(doc, "/root/a/x:c") # => <x:c/>
REXML::XPath
.first(a, "x:c") # => <x:c/>
REXML::XPath
.first(a, "y:c") # => nil
REXML::XPath
.first(a, "y:c", {"y" => "1"}) # => <x:c/>
b2 = REXML::XPath.first(doc, "/root/a/b[te...

REXML::XPath.match(element, path = nil, namespaces = {}, variables = {}) -> [Node] (7.0)

element の path で指定した XPath 文字列にマッチするノードの配列を 返します。

...s 変数名とその値の対応付け

//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root xmlns:x='1'>
<a>
<b>b1</b>
<x:c />
<b>b2</b>
<d />
</a>
<b> b3 </b>
</root>
EOS

REXML::XPath
.match(doc, "/root/a/b") # => [<b> ... </>, <b> ... </>]
//}...