55件ヒット
[1-55件を表示]
(0.056秒)
キーワード
- optparse (11)
-
rexml
/ parsers / pullparser (11) - rss (11)
- tsort (11)
-
webrick
/ cgi (11)
検索結果
-
webrick
/ cgi (25.0) -
一般の CGI 環境で webrick ライブラリのサーブレットと同じように CGI スクリプトを書くための ライブラリです。サーバが WEBrick でなくても使うことが出来ます。
...ルドの値は WEBrick::HTTPRequest#query メソッドが返す Hash オブジェクトに
収納されています。
require "webrick/cgi"
class MyCGI < WEBrick::CGI
def do_GET(req, res)
req.query #=> Hash を返します。
req.query['q']
req.query['n......['q'].list #=> フォームの値を保持した文字列の配列を返します。
end
end
MyCGI.new.start()
query メソッドが返す Hash オブジェクトのキーと値のうち値は WEBrick::HTTPUtils::FormData クラスの
インスタンスになります。FormData クラス......eld_name"
d.filename #=> もしあればファイル名を返す。
d['content-type'] #=> ヘッダの値は [] メソッドで取得する
d #=> 送られてきたファイルの中身
end
end
MyCGI.new.start()
====... -
optparse (19.0)
-
コマンドラインのオプションを取り扱うためのライブラリです。
...{|v| p v } # <- [VAL] を追加
opt.on('-b') {|v| p v }
opt.parse!(ARGV)
p ARGV
//}
↓
ruby sample.rb -a
# => nil
[]
同様に、ヘルプの見栄えが良いように "VAL]" を付加しています。
ショートオプションの引数指定は使い......//emlist[][ruby]{
opt.on('-a', '--foo=VAL') {|v| p v }
opt.on('--[no-]bar[=VAL]') {|v| p v }
//}
と "=" を使うのが良いと思われます。
オプションを指定する時は、どのオプションか一意に決まる長さまで指定す
れば良いです。
//emlist[][ruby]{
requ......VERSION 定数も参照します。Ruby のバージョンを示す VERSION
定数が ruby 1.8 までは定義されているので注意)
//emlist[][ruby]{
require 'optparse'
opt = OptionParser.new
Version = "1.2.3" # opt.version = "1.2.3"
opt.parse!(ARGV)
//}
↓
ruby ./sample.rb -... -
rexml
/ parsers / pullparser (19.0) -
プル方式の XML パーサ。
...rsers::PullEvent#event_type で「開始タグ」「終了タグ」
といったイベントの種類を取得します。
REXML::Parsers::PullEvent#[] でそのイベントのパラメータ
(例えば開始タグなら要素名と属性)を得ることができます。
===[a:event_type] イベ......可能です。
: start_element (要素名, 属性)
XML要素の開始タグ。属性は { 属性名文字列 => 属性値文字列 } という Hash
: end_element (要素名)
XML要素の終了タグ
: text (正規化文字列, 非正規化文字列)
テキストノード
: processing_instruc......DTDの属性リスト宣言。属性名とデフォルト値 は { 属性名文字列 => デフォルト値文字列(なければnil) } という Hash
: elementdecl (宣言文字列)
DTDの要素宣言
: entitydecl
DTDの実体宣言
: notationdecl (記法名文字列, "PUBLIC" | "SYSTEM" | n... -
rss (19.0)
-
RSS を扱うためのライブラリです。
...; RSS::RDF::Item
3番目のitem要素にアクセスするには以下のようにします。省略さ
れなかったリーダの引数はArray#[]の引数と同じように扱われます。
rss = RSS::Parser.parse(rss_source)
rss.item(2) # => /rdf:RDF/item[3]要素; RSS::RDF::Item
子要......合は少し異なります.要素名の複
数形でのメソッドで要素の配列を取得して,その配列に対して
Array#<<やArray#[]=などを用いて要素を設定します.
rss = RSS::Parser.parse(rss_source)
item = RSS::RDF::Item.new(rdf_about_value)
rss.items << item......MLStyleSheet.new(...)
RSS::XMLStyleSheet.newには以下のようなHashまたは
連想配列を渡します.作成されるRSS::XMLStyleSheetオブジェ
クトは与えられた引数によって初期化されます.
Hash:
{
:href => "...",
:type => "...",
:title => "...",... -
tsort (13.0)
-
tsort はトポロジカルソートと強連結成分に関するモジュールを提供します。
...=== Example
//emlist[][ruby]{
require 'tsort'
class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end
{1=>[2, 3], 2=>[3], 3=>[], 4=>[]}.tsort
#=> [3, 2, 1, 4]
{1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}.strongly_connected_c......単純な `make' に似たツールは以下のように実装できます。
//emlist[][ruby]{
require 'tsort'
class Make
def initialize
@dep = {}
@dep.default = []
end
def rule(outputs, inputs=[], &block)
triple = [outputs, inputs, block]
outputs.each {|f| @dep[f] = [tripl...