679件ヒット
[1-100件を表示]
(0.089秒)
ライブラリ
- ビルトイン (373)
- date (12)
- ipaddr (12)
-
irb
/ cmd / help (12) -
net
/ imap (12) - openssl (12)
-
rexml
/ document (48) -
rexml
/ streamlistener (12) - shell (24)
-
shell
/ command-processor (24) -
shell
/ filter (30)
クラス
-
ARGF
. class (12) - Date (12)
-
Enumerator
:: Lazy (93) - IPAddr (12)
-
IRB
:: ExtendCommand :: Help (12) - Integer (36)
- Method (7)
- Module (12)
-
Net
:: IMAP :: FetchData (12) -
OpenSSL
:: BN (12) - Proc (7)
-
Process
:: Status (12) -
REXML
:: Element (24) -
REXML
:: XPath (12) - Range (12)
-
RubyVM
:: InstructionSequence (72) - Shell (24)
-
Shell
:: CommandProcessor (24) -
Shell
:: Filter (30) - String (84)
モジュール
- Kernel (14)
-
REXML
:: StreamListener (12)
キーワード
-
$ -K (7) -
$ KCODE (7) - Numeric (12)
- Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (12)
- Transitive (12)
- [] (24)
-
absolute
_ path (12) - attr (12)
-
base
_ label (12) - cat (18)
- chunk (24)
- compile (12)
- each (12)
-
each
_ element _ with _ attribute (12) -
each
_ element _ with _ text (12) - echo (18)
- entitydecl (12)
- execute (12)
- glob (18)
- gsub (48)
- irb (12)
- label (12)
- new (24)
-
next
_ year (12) - path (12)
- prepend (12)
-
rexml
/ document (12) -
rexml
/ parsers / pullparser (12) -
rexml
/ parsers / sax2parser (12) -
rexml
/ parsers / streamparser (12) -
rexml
/ parsers / ultralightparser (12) -
ruby 1
. 6 feature (12) -
slice
_ after (22) -
slice
_ before (36) -
slice
_ when (11) - sub (36)
- tee (18)
-
to
_ io (12) - 演算子式 (12)
検索結果
先頭5件
-
rexml
/ parsers / streamparser (32138.0) -
ストリーム式の XML パーサ。
...ストリーム式の XML パーサ。
rexml の XML パーサの中では高速ですが、機能は限定的です。
もう少し高機能なストリーム式パーサが必要な場合は
REXML::Parsers::SAX2Parser を用いてください。
パーサからはコールバックによって......受け取ります。
REXML::StreamListener を include し、
必要なメソッドをオーバーライドしたクラスのオブジェクトを
コールバックオブジェクトとして REXML::Parsers::StreamParser.new
に渡します。
REXML::Parsers::StreamParser#parse を呼び出すと......att='1' bar:att='2' att='<'/>
&& <!-- comment here--> &bar;
</root>
EOS
class Listener
def method_missing(name, *args)
p [name, *args]
end
def respond_to_missing?(sym, include_private)
true
end
end
REXML::Parsers::StreamParser.new(xml, Listener.new).parse
# >> [:xmldec... -
rexml
/ parsers / sax2parser (26372.0) -
SAX2 と同等の API を持つストリーム式の XML パーサ。
...ェクトに REXML::Parsers::SAX2Parser#listen で
設定してから REXML::Parsers::SAX2Parser#parse を呼び出すことで、
パーサからコールバックが呼び出されます。
コールバックには2種類あって、ブロックを使う方式と REXML::SAX2Listener
を include......。詳しくは
REXML::Parsers::SAX2Parser#listen を参照してください。
REXML::Parsers::StreamParser のパーサよりは高機能です。
//emlist[][ruby]{
require 'rexml/parsers/sax2parser'
require 'rexml/sax2listener'
parser = REXML::Parsers::SAX2Parser.new(<<XML)
<root n="0">
<a......ere--> &bar;
</root>
EOS
class Listener
#include REXML::SAX2Listener
def method_missing(name, *args)
p [name, *args]
end
def respond_to_missing?(name, include_private)
name != :call
end
end
parser = REXML::Parsers::SAX2Parser.new(xml)
parser.listen(Listener.new)
parser.parse
# >>... -
rexml
/ parsers / pullparser (26144.0) -
プル方式の XML パーサ。
...プル方式の XML パーサ。
REXML::Parsers::StreamParser はパースした結果をコールバックによって
受動的に受け取りますが、このパーサは REXML::Parsers::PullParser#pull
によってパーサから結果をイベントという形で順に能動的に取り出......取り除きます。
pull は REXML::Parsers::PullEvent オブジェクトを返します。
このオブジェクトの
REXML::Parsers::PullEvent#event_type で「開始タグ」「終了タグ」
といったイベントの種類を取得します。
REXML::Parsers::PullEvent#[] でそのイベ......>
<root xmlns:foo="http://example.org/foo"
xmlns:bar="http://example.org/bar"><![CDATA[cdata is here]]>
<a foo:att='1' bar:att='2' att='<'/>
&& <!-- comment here--> &bar;
</root>
EOS
parser = REXML::Parsers::PullParser.new(xml)
while parser.has_next?
p parser.pull
end
# >> xm... -
rexml
/ document (26096.0) -
DOM スタイルの XML パーサ。
...
REXML::Document.new で XML 文書から DOM ツリーを
構築し、ツリーのノードの各メソッドで文書の内容にアクセスします。
以下のプログラムではブックマークの XML からデータを取り出します。
//emlist[][ruby]{
require 'rexml/document'
re......quire 'pp'
Bookmark = Struct.new(:href, :title, :desc)
doc = REXML::Document.new(<<XML)
<?xml version="1.0" encoding="UTF-8" ?>
<xbel version="1.0">
<bookmark href="http://www.ruby-lang.org/ja/">
<title>オブジェクト指向スクリプト言語 Ruby</title>
<desc>Rubyの公式サイ......mark|
href = bookmark.attribute("href").value
title_element = bookmark.elements["title"]
title = title_element ? title_element.text : nil
desc_element = bookmark.elements["desc"]
desc = desc_element ? desc_element.text : nil
Bookmark.new(href, title, desc)
end
pp bookmarks
# >> [#<struc... -
rexml
/ parsers / ultralightparser (26072.0) -
パース結果を配列で作られた木構造により返すパーサ。
...より返すパーサ。
REXML::Parsers::UltraLightParser.new でパーサオブジェクトを
生成し、REXML::Parsers::UltraLightParser#parse でパースし
その結果の木構造を返します。
===[a:nodes] ノードの表現
REXML::Parsers::UltraLightParser#parse が返す
XML の各......XML 要素のように子ノードを持つ場合、
それらの子ノードもこの配列の要素として保持されます。
REXML::Parsers::UltraLightParser#parse の返り値となる
木のルートは特別で、ノードの種類を表すシンボルを持ちません。
XML宣言、DTD......[][ruby]{
require 'rexml/parsers/ultralightparser'
require 'pp'
parser = REXML::Parsers::UltraLightParser.new(<<XML)
<?xml version="1.0" encoding="UTF-8" ?>
<root>
<a n="1">xyz</a>
<b m="2" />
</root>
XML
pp parser.parse
# >> [[:xmldecl, "1.0", "UTF-8", nil],
# >> [:text, "\n"],
# >> [:start_e... -
Process
:: Status # >>(num) -> Integer (21222.0) -
self.to_i >> num と同じです。
...self.to_i >> num と同じです。
@param num 整数を指定します。
fork { exit 99 } #=> 26563
Process.wait #=> 26563
$?.to_i #=> 25344
$? >> 8 #=> 99... -
Proc
# >>(callable) -> Proc (21218.0) -
self と引数を合成した Proc を返します。
...成した Proc を返します。
戻り値の Proc は可変長の引数を受け取ります。
戻り値の Proc を呼び出すと、まず受け取った引数を self に渡して呼び出し、
その戻り値を callable に渡して呼び出した結果を返します。
Proc#<< とは呼......ram callable Proc、Method、もしくは任意の call メソッドを持ったオブジェクト。
//emlist[例][ruby]{
f = proc { |x| x * x }
g = proc { |x| x + x }
# (3 * 3) + (3 * 3)
p (f >> g).call(3) # => 18
//}
//emlist[call を定義したオブジェクトを渡す例][ruby]{
class Wor......anner
def self.call(str)
str.scan(/\w+/)
end
end
File.write('testfile', <<~TEXT)
Hello, World!
Hello, Ruby!
TEXT
pipeline = proc { |fname| File.read(fname) } >> WordScanner >> method(:p)
pipeline.call('testfile') # => ["Hello", "World", "Hello", "Ruby"]
//}
@see Method#<<, Method#>>... -
Integer
# >>(bits) -> Integer (21212.0) -
シフト演算子。bits だけビットを右にシフトします。
...、符号ビット(最上位ビット(MSB))が保持されます。
bitsが実数の場合、小数点以下を切り捨てた値でシフトします。
@param bits シフトさせるビット数
//emlist[][ruby]{
printf("%#b\n", 0b0101 >> 1) # => 0b10
p -1 >> 1 # => -1
//}... -
IPAddr
# >>(num) -> IPAddr (21200.0) -
ビットごとの右シフト演算により、新しい IPAddr オブジェクトを生成します。
...ビットごとの右シフト演算により、新しい IPAddr オブジェクトを生成します。
@param num 右シフトする桁数。...