種類
- インスタンスメソッド (25)
- 特異メソッド (12)
- クラス (3)
クラス
-
REXML
:: CData (3) -
REXML
:: DocType (1) -
REXML
:: Document (3) -
REXML
:: Element (11) -
REXML
:: Instruction (2) -
REXML
:: Text (13) -
REXML
:: XPath (2)
モジュール
-
REXML
:: Security (2)
キーワード
- <=> (1)
- Comment (1)
- Instruction (1)
- Text (1)
- clone (1)
- content (1)
- context (2)
- context= (1)
- doctype (1)
- each (1)
-
each
_ element _ with _ text (1) - empty? (1)
-
entity
_ expansion _ text _ limit (2) -
entity
_ expansion _ text _ limit= (2) - first (1)
-
get
_ text (1) -
has
_ elements? (1) -
has
_ text? (1) - new (4)
-
next
_ element (1) -
node
_ type (1) - normalize (1)
- raw (1)
- raw= (1)
- target (1)
- text= (1)
- texts (1)
-
to
_ s (2) - unnormalize (1)
- value (2)
- value= (1)
検索結果
先頭5件
-
REXML
:: Element # text(path = nil) -> String | nil (54454.0) -
先頭のテキスト子ノードの文字列を返します。
...トノードがない場合には nil を返します。
@param path XPath文字列
@see REXML::Element#get_text
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<p>some text <b>this is bold!</b> more text</p>"
# doc.root (<p> ... </p>) は2つのテキストノード("some te... -
REXML
:: Element # text=(text) (18877.0) -
「先頭の」テキストノードを text で置き換えます。
...ードが削除されます。
@param text 置き換え後のテキスト(文字列、REXML::Text, nil(削除))
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new('<a><b/></a>')
doc.to_s # => "<a><b/></a>"
doc.root.text = "Foo"; doc.to_s # => "<a><b/>Foo</a>"
doc.root.text = "Bar... -
REXML
:: Element # get _ text(path = nil) -> REXML :: Text | nil (18757.0) -
先頭のテキスト子ノードを返します。
...ストノードがない場合には nil を返します。
@param path XPath文字列
@see REXML::Element#text
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<p>some text <b>this is bold!</b> more text</p>"
# doc.root (<p> ... </p>) は2つのテキストノード("some tex... -
REXML
:: Element # each _ element _ with _ text(text = nil , max = 0 , name = nil) {|element| . . . } -> () (18739.0) -
テキストを子ノードとして 持つすべての子要素を引数としてブロックを呼び出します。
...身(文字列)
@param max ブロック呼出の対象とする子要素の最大個数
@param name xpath文字列
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new '<a><b>b</b><c>b</c><d>d</d><e/></a>'
doc.root.each_element_with_text {|e|p e}
# >> <b> ... </>
# >> <c> ... </>
# >... -
REXML
:: Element # texts -> [REXML :: Texts] (18607.0) -
すべてのテキスト子ノードの配列を返します。
すべてのテキスト子ノードの配列を返します。
返される配列は freeze されます。 -
REXML
:: Element # context -> {Symbol => object} | nil (18379.0) -
要素の「コンテキスト」を Hash で返します。
要素の「コンテキスト」を Hash で返します。
コンテキストとは text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitespac... -
REXML
:: Element # context=(value) (18379.0) -
要素の「コンテキスト」を Hash で設定します。
要素の「コンテキスト」を Hash で設定します。
コンテキストとは、 text node (REXML::Text) での特別な文字、特に空白について
の取り扱いについての設定です。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名前の集合を文字列の配列で指定します。
また、すべての要素で空白を考慮して欲しい場合には
:all を指定します。
デフォルト値は :all です。
REXML::Element#whitespace も参照してください。
: :compress_whitesp... -
REXML
:: Document . entity _ expansion _ text _ limit -> Integer (18346.0) -
実体参照の展開による文字列の増分(テキストのバイト数)の 最大値を指定します。
実体参照の展開による文字列の増分(テキストのバイト数)の
最大値を指定します。
展開によって増分値がこの値を越えると
例外を発生させ、処理を中断します。
実体参照の展開処理を使った DoS 攻撃に対抗するための
仕組みです。
デフォルトは 10240 (byte) です。
このメソッドは Ruby 2.1 から deprecated になりました。
REXML::Security.entity_expansion_text_limit を使ってください。
@see REXML::Document.entity_expansion_text_limit=,
http://ww... -
REXML
:: Document . entity _ expansion _ text _ limit=(val) (18346.0) -
実体参照の展開による文字列の増分(テキストのバイト数)の 最大値を指定します。
実体参照の展開による文字列の増分(テキストのバイト数)の
最大値を指定します。
展開によって増分値がこの値を越えると
例外を発生させ、処理を中断します。
実体参照の展開処理を使った DoS 攻撃に対抗するための
仕組みです。
デフォルトは 10240 (byte) です。
このメソッドは Ruby 2.1 から deprecated になりました。
REXML::Security.entity_expansion_text_limit= を使ってください。
@see REXML::Document.entity_expansion_text_limit
http://www... -
REXML
:: Security . entity _ expansion _ text _ limit -> Integer (18328.0) -
実体参照の展開による文字列の増分(テキストのバイト数)の 最大値を指定します。
実体参照の展開による文字列の増分(テキストのバイト数)の
最大値を指定します。
展開によって増分値がこの値を越えると
例外を発生させ、処理を中断します。
実体参照の展開処理を使った DoS 攻撃に対抗するための
仕組みです。
デフォルトは 10240 (byte) です。
@see REXML::Document.entity_expansion_text_limit=,
http://www.ruby-lang.org/ja/news/2013/02/22/rexml-dos-2013-02-22/ -
REXML
:: Security . entity _ expansion _ text _ limit=(val) (18328.0) -
実体参照の展開による文字列の増分(テキストのバイト数)の 最大値を指定します。
実体参照の展開による文字列の増分(テキストのバイト数)の
最大値を指定します。
展開によって増分値がこの値を越えると
例外を発生させ、処理を中断します。
実体参照の展開処理を使った DoS 攻撃に対抗するための
仕組みです。
デフォルトは 10240 (byte) です。
@see REXML::Document.entity_expansion_text_limit
http://www.ruby-lang.org/ja/news/2013/02/22/rexml-dos-2013-02-22/ -
REXML
:: Element # has _ text? -> bool (18310.0) -
要素がテキストノードを子ノードとして持つ場合に true を返します。
要素がテキストノードを子ノードとして持つ場合に true を返します。 -
REXML
:: DocType # context -> { Symbol => object } (18307.0) -
DTD が属する文書の「コンテキスト」を返します。
DTD が属する文書の「コンテキスト」を返します。
具体的には親ノードである REXML::Document オブジェクトの
REXML::Element#context を返します。
コンテキストの具体的な内容については REXML::Element#context を
参照してください。 -
REXML
:: Text (18007.0) -
XML のテキストノードを表すクラスです。
XML のテキストノードを表すクラスです。
注意: Ruby 2.0.0 以前では、バグのため entity_filter の機能は正しく動作しません。 -
REXML
:: Text . new(arg , respect _ whitespace = false , parent = nil , raw = nil , entity _ filter = nil , illegal = REXML :: Text :: NEEDS _ A _ SECOND _ CHECK) (9472.0) -
テキストノードオブジェクトを生成します。
...L::Text.new("<&", false, nil, true).to_s # parse error
//}
//emlist[doctype があり、実体が宣言されている場合][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE root [
<!ENTITY p "foobar publisher">
<!ENTITY % q "q... -
REXML
:: Text # clone -> REXML :: Text (9310.0) -
self を複製します。
self を複製します。 -
REXML
:: Text # to _ s -> String (9061.0) -
テキストの内容を正規化(すべての実体をエスケープ)された状態で返します。
...トとして妥当です。
結果は REXML::Text.new で指定した entity_filter を反映しています。
@see REXML::Text#value
//emlist[][ruby]{
require 'rexml/document'
t = REXML::Text.new("< & foobar", false, nil, false)
t.to_s # => "< & foobar"
t.value # => "< & foobar"
//}... -
REXML
:: Text # value -> String (9061.0) -
テキストの内容を非正規化(すべての実体をアンエスケープ)された状態で返します。
...。
このメソッドの返り値では raw モードや entity_filter は無視されます。
@see REXML::Text#raw, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
t = REXML::Text.new("< & foobar", false, nil, false)
t.to_s # => "< & foobar"
t.value # => "< & foobar"
//}... -
REXML
:: Text . unnormalize(string , doctype = nil , filter = nil , illegal = nil) -> String (9061.0) -
string を非正規化(すべての entity をアンエスケープ)したものを 返します。
string を非正規化(すべての entity をアンエスケープ)したものを
返します。
filter でアンエスケープしない実体の実体名を文字列配列で指定します。
@param string 非正規化する文字列
@param doctype DTD(REXML::DocType オブジェクト)
@param filter アンエスケープしない実体の実体名(文字列配列)
@param illegal 内部用。使わないでください。
//emlist[][ruby]{
require 'rexml/text'
REXML::Text.unnormalize("& &foobar; ... -
REXML
:: Text # node _ type -> Symbol (9055.0) -
Symbol :text を返します。
Symbol :text を返します。 -
REXML
:: Text # raw -> bool (9043.0) -
"raw" モードであれば真を返します。
"raw" モードであれば真を返します。
raw モードについては REXML::Text.new を参考にしてください。
@see REXML::Text#raw= -
REXML
:: Text # raw=(value) (9043.0) -
"raw" モードの設定を変更します。
"raw" モードの設定を変更します。
raw モードについては REXML::Text.new を参考にしてください。
@param value 設定する真偽値
@see REXML::Text#raw -
REXML
:: Text # <=>(other) -> -1 | 0 | 1 (9025.0) -
テキストの内容を other と比較します。
テキストの内容を other と比較します。
@param other 比較対象(REXML::Text オブジェクトもしくは文字列) -
REXML
:: Text # value=(val) (9025.0) -
テキストの内容を val に変更します。
...al には非正規化された(エスケープされていない)文字列を渡さなければ
なりません。
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("a")
e.add_text("foo")
e[0].value = "bar"
e.to_s # => "<a>bar</a>"
e[0].value = "<a>"
e.to_s # => "<a><a></a>"
/... -
REXML
:: Text # doctype -> REXML :: DocType | nil (9007.0) -
テキストノードが属する文書の DTD を返します。
テキストノードが属する文書の DTD を返します。
そのような文書(REXML::Document)が存在しない、すなわち
テキストノードの親ノードを辿っても REXML::Document に到達しない、
場合には nil を返します。
@see REXML::DocType -
REXML
:: Text # empty? -> bool (9007.0) -
テキストが空ならば真を返します。
テキストが空ならば真を返します。 -
REXML
:: Text . normalize(input , doctype = nil , entity _ filter = nil) -> String (9007.0) -
input を正規化(すべての entity をエスケープ)したものを 返します。
input を正規化(すべての entity をエスケープ)したものを
返します。
@param input 正規化する文字列
@param doctype DTD(REXML::DocType オブジェクト)
@param entity_filter 置換したい実体の名前の配列 -
REXML
:: CData . new(text , respect _ whitespace = true , parent = nil) -> REXML :: CData (394.0) -
text をテキストとして持つ CData オブジェクトを生成します。
...字列
@param respect_whitespace 空白を保存するかどうかを決める真偽値
@param parent 親ノード
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root />
EOS
doc.root.add(REXML::CData.new("foo bar baz "))
doc.to_s # => "<root><![CDATA[foo bar baz ]]><... -
REXML
:: Element . new(arg = UNDEFINED , parent = nil , context = nil) -> REXML :: Element (379.0) -
要素オブジェクトを生成します。
要素オブジェクトを生成します。
arg が文字列の場合、新たな要素の名前は arg に設定されます。
arg が REXML::Element オブジェクトの場合は、
新たな要素の名前、属性、context が arg のもので初期化されます。
parent で親ノードを指定します。
context には hash table で要素のコンテキストを指定します。
基本的には text node (REXML::Text) での特別な文字、特に空白について
の取り扱いを指定できます。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
... -
REXML
:: Document . new(source = nil , context = {}) -> REXML :: Document (343.0) -
Document オブジェクトを生成します。
Document オブジェクトを生成します。
source には String、IO、REXML::Document のいずかが
指定できます。 REXML::Document を指定すると
コンテキストと要素、属性が複製されます。
文字列の場合はそれを XML と見なしてパースします。
IOの場合は、XML文書を読み出してパースします。
context で「コンテキスト」を指定します。テキストノードの空白や
特殊文字の取り扱いを Hash で指定します。
以下の Symbol をハッシュのキーとして使います。
: :respect_whitespace
空白を考慮して欲しい要素の名... -
REXML
:: XPath . first(element , path = nil , namespaces = {} , variables = {}) -> Node | nil (61.0) -
element の path で指定した XPath 文字列にマッチする最初のノードを 返します。
...文字列
@param namespace 名前空間とURLの対応付け
@param variables 変数名とその値の対応付け
//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
:: CData # to _ s -> String (43.0) -
テキスト文字列を返します。
...テキスト文字列を返します。
@see REXML::Text#value, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root><![CDATA[foobar baz]]></root>
EOS
doc.root[0].class # => REXML::CData
doc.root[0].value # => "foobar baz"
//}... -
REXML
:: CData # value -> String (43.0) -
テキスト文字列を返します。
...テキスト文字列を返します。
@see REXML::Text#value, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root><![CDATA[foobar baz]]></root>
EOS
doc.root[0].class # => REXML::CData
doc.root[0].value # => "foobar baz"
//}... -
REXML
:: Instruction (43.0) -
XML 処理命令(XML Processing Instruction, XML PI)を表すクラス。
...頭の <?xml version=... ?>)はXML処理命令ではありませんが、
似た見た目を持っています。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<root />
EOS
doc[... -
REXML
:: Instruction # content -> String | nil (43.0) -
XML 処理命令の内容を返します。
...XML 処理命令の内容を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<?foobar?>
<root />
EOS
doc[2] # => <?p-i xml-stylesheet ...?>
doc[2].target # => "xml-... -
REXML
:: Instruction # target -> String (43.0) -
XML 処理命令のターゲットを返します。
...XML 処理命令のターゲットを返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<root />
EOS
doc[2] # => <?p-i xml-stylesheet ...?>
doc[2].target # => "xml-st... -
REXML
:: Comment (25.0) -
XML コメントを表すクラス。
...XML コメントを表すクラス。
コメントとは <!-- と --> で挟まれたテキストです。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<!-- xx -->
<root>
<!-- yy -->
text
<!-- zz -->
</root>
EOS
doc[0].string # => " xx "
doc.root[1].string # => " yy... -
REXML
:: Element # has _ elements? -> bool (25.0) -
self が一つでも子要素を持つならば true を返します。
...self が一つでも子要素を持つならば true を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a><b/><c>Text</c></a>")
doc.root.has_elements? # => true
doc.elements["/a/b"].has_elements? # => false
# /a/c はテキストノードしか... -
REXML
:: Element # next _ element -> Element | nil (25.0) -
次の兄弟要素を返します。
...次の兄弟要素を返します。
次の要素が存在しない場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new '<a><b/>text<c/></a>'
doc.root.elements['b'].next_element # => <c/>
doc.root.elements['c'].next_element # => nil
//}... -
REXML
:: XPath . each(element , path = nil , namespaces = {} , variables = {}) {|e| . . . } -> () (25.0) -
element の path で指定した XPath 文字列にマッチする各ノード に対してブロックを呼び出します。
...文字列
@param namespace 名前空間とURLの対応付け
@param variables 変数名とその値の対応付け
//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...