Ruby 2.7.0 リファレンスマニュアル > ライブラリ一覧 > rexml/documentライブラリ > REXML::Elementクラス > add_attribute

instance method REXML::Element#add_attribute

add_attribute(key, value) -> ()[permalink][rdoc]
add_attribute(attr) -> ()

要素の属性を追加します。同じ名前の属性がすでにある場合はその属性を新しい属性で置き換えます。

引数の与えかたは2通りあります。要素名と値の2つの文字列で渡す方法と REXML::Attribute オブジェクトを渡す方法です。

文字列2つで指定する場合、属性値は unnormalized な文字列を渡す必要があります。

[PARAM] key:
属性名(文字列)
[PARAM] value:
属性値(文字列)
[PARAM] attr:
属性(REXML::Attribute オブジェクト)

require 'rexml/document'
doc = REXML::Document.new("<e/>")
doc.root.add_attribute("a", "b"); doc.root # => <e a='b'/>
doc.root.add_attribute("x:a", "c"); doc.root # => <e a='b' x:a='c'/>
doc.root.add_attribute(REXML::Attribute.new("b", "d"))
doc.root # => <e a='b' x:a='c' b='d'/>