種類
- インスタンスメソッド (82)
- 文書 (71)
- 特異メソッド (66)
- ライブラリ (44)
- クラス (33)
ライブラリ
- ビルトイン (71)
- csv (77)
- erb (11)
-
rexml
/ document (22)
クラス
- Array (19)
- CSV (66)
-
REXML
:: Document (22) - String (41)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - CSV (11)
- ERB (11)
-
NEWS for Ruby 2
. 7 . 0 (5) - String (11)
- concat (19)
- open (44)
- pack (19)
- pack テンプレート文字列 (11)
- read (11)
- readlines (11)
-
rexml
/ parsers / pullparser (11) -
rexml
/ parsers / sax2parser (11) -
rexml
/ parsers / streamparser (11) - rss (11)
-
ruby 1
. 8 . 2 feature (11) -
ruby 1
. 8 . 3 feature (11) - unpack (11)
- write (22)
- リテラル (11)
- 変数と定数 (11)
検索結果
先頭5件
-
CSV
. open(filename , options = Hash . new) {|csv| . . . } -> nil (54.0) -
このメソッドは IO オブジェクトをオープンして CSV でラップします。 これは CSV ファイルを書くための主要なインターフェイスとして使うことを意図しています。
...了時にそれをクローズします。
ブロックが与えられなかった場合は CSV オブジェクトを返します。
データが Encoding.default_external と異なる場合は、mode にエンコー
ディングを指定する文字列を埋め込まなければなりません。......IO#close
* IO#close_read
* IO#close_write
* IO#closed?
* IO#eof
* IO#eof?
* IO#external_encoding
* IO#fcntl
* IO#fileno
* File#flock
* IO#flush
* IO#fsync
* IO#internal_encoding
* IO#ioctl
* IO#isatty
* File#path
* IO#pid
* IO#pos
* IO#pos=
* IO#reopen
* IO#se......と同じオプションを指定できます。
//emlist[例 読み取り・ブロック指定なし][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18
3,ami,sato,19
4,yumi,adachi,21
CSV
csv = CSV.open("test.csv", headers: true)
csv.c... -
String (54.0)
-
文字列のクラスです。 ヌル文字を含む任意のバイト列を扱うことができます。 文字列の長さにはメモリ容量以外の制限はありません。
...ト
<<End
この行はヒアドキュメント
End
# ダブルクオートヒアドキュメント (クオートなしの場合と同じ)
<<"End"
この行はヒアドキュメント
End
# シングルクオートヒアドキュメント (一切のエスケープシーケンスが無効)
<<'End'......ント
End
# 終端記号がインデントされたヒアドキュメント
# シングルクオート、ダブルクオートとの併用も可能
<<-End
この行はヒアドキュメント (終端記号をインデントできる)
End
//}
===[a:mutable] 破壊的な変更
Ruby の String......"
p s #=> "ルビー"
e = "言語".encode("EUC-JP")
u = "言語".encode("UTF-8")
p e.encoding #=> Encoding::EUC_JP
p u.encoding #=> Encoding::UTF_8
//}
より詳しく知りたい場合は、spec/m17n を参照してください。
==== 文字......ルクオートとの併用も可能
<<-End
この行はヒアドキュメント (終端記号をインデントできる)
End
# 中身がインデントされたヒアドキュメント
# シングルクオート、ダブルクオートとの併用も可能
<<~End
この行のインデント... -
Array
# pack(template) -> String (48.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...HSElKS0xNTk9QUVJTVFVWV1hZWg==".unpack("m0")
# => ["abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"]
//}
@see base64
: M
quoted-printable encoding された文字列
//emlist[][ruby]{
["a b c\td \ne"].pack("M") # => "a b c\td =\n\ne=\n"
"a b c\td =\n\ne=\n".unpack("M") # => ["a b c\td \ne"......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 23 # ゲタ
sgn * fra * 2**(exp-127-23) # 正規化数 (normalized number)
end
//}
: G
ビッグエンディアンの倍精......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 52 # ゲタ
sgn * fra * 2**(exp-1023-52) # 正規化数 (normalized number)
end
//}
: p
ヌル終端の文字列へのポイ... -
Array
# pack(template , buffer: String . new) -> String (48.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...HSElKS0xNTk9QUVJTVFVWV1hZWg==".unpack("m0")
# => ["abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"]
//}
@see base64
: M
quoted-printable encoding された文字列
//emlist[][ruby]{
["a b c\td \ne"].pack("M") # => "a b c\td =\n\ne=\n"
"a b c\td =\n\ne=\n".unpack("M") # => ["a b c\td \ne"......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 23 # ゲタ
sgn * fra * 2**(exp-127-23) # 正規化数 (normalized number)
end
//}
: G
ビッグエンディアンの倍精......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 52 # ゲタ
sgn * fra * 2**(exp-1023-52) # 正規化数 (normalized number)
end
//}
: p
ヌル終端の文字列へのポイ... -
String
# unpack(template) -> Array (48.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
...HSElKS0xNTk9QUVJTVFVWV1hZWg==".unpack("m0")
# => ["abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"]
//}
@see base64
: M
quoted-printable encoding された文字列
//emlist[][ruby]{
["a b c\td \ne"].pack("M") # => "a b c\td =\n\ne=\n"
"a b c\td =\n\ne=\n".unpack("M") # => ["a b c\td \ne"......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 23 # ゲタ
sgn * fra * 2**(exp-127-23) # 正規化数 (normalized number)
end
//}
: G
ビッグエンディアンの倍精......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 52 # ゲタ
sgn * fra * 2**(exp-1023-52) # 正規化数 (normalized number)
end
//}
: p
ヌル終端の文字列へのポイ... -
pack テンプレート文字列 (48.0)
-
pack テンプレート文字列
...HSElKS0xNTk9QUVJTVFVWV1hZWg==".unpack("m0")
# => ["abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"]
//}
@see base64
: M
quoted-printable encoding された文字列
//emlist[][ruby]{
["a b c\td \ne"].pack("M") # => "a b c\td =\n\ne=\n"
"a b c\td =\n\ne=\n".unpack("M") # => ["a b c\td \ne"......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 23 # ゲタ
sgn * fra * 2**(exp-127-23) # 正規化数 (normalized number)
end
//}
: G
ビッグエンディアンの倍精......sgn * Inf # ±∞ (positive/negative infinity)
else
NaN # 非数 (not a number)
end
else
fra += 1 << 52 # ゲタ
sgn * fra * 2**(exp-1023-52) # 正規化数 (normalized number)
end
//}
: p
ヌル終端の文字列へのポイ... -
リテラル (48.0)
-
リテラル * num * string * backslash * exp * char * command * here * regexp * array * hash * range * symbol * percent
...要があります。
: ?あ
文字 あ を表す String
: ?\u3042
文字 あ を表す String。
文字のエンコーディングはEncoding::UTF_8に設定されます。
: ?\C-a
コントロール a を表す String
: ?\M-a
メタ a を表す String
: ?\M-\C-a
メタ-コ......キュメント (行指向文字列リテラル)
文法:
<<[-]["'`]識別子["'`]
...
識別子
普通のstringはデリミタ(", ', ` など)で囲まれた
文字列ですが、ヒアドキュメントは `<<識別子' を含む行の次の行から `識別
子' だ......ば、
//emlist[][ruby]{
print <<EOS # 識別子 EOS までがリテラルになる
the string
next line
EOS
//}
これは以下と同じです。
//emlist[][ruby]{
print " the string\n next line\n"
//}
ヒアドキュメントでは、開始ラベル `<<識別子' が文法要素と......キュメント (行指向文字列リテラル)
文法:
<<[(-|~)]["'`]識別子["'`]
...
識別子
普通のstringはデリミタ(", ', ` など)で囲まれた
文字列ですが、ヒアドキュメントは `<<識別子' を含む行の次の行から `識別
子'... -
rss (42.0)
-
RSS を扱うためのライブラリです。
...ドで要素の配列を取得して,その配列に対して
Array#<<やArray#[]=などを用いて要素を設定します.
rss = RSS::Parser.parse(rss_source)
item = RSS::RDF::Item.new(rdf_about_value)
rss.items << item
rss.items.last == item # => true
注意: item=/set_itemなど......::XMLStyleSheet
オブジェクトを挿入することでRSS/Atomにxml-stylesheetを
関連づけることができます.
rss.xml_stylesheets << RSS::XMLStyleSheet.new(...)
RSS::XMLStyleSheet.newには以下のようなHashまたは
連想配列を渡します.作成されるRSS::XMLStyle......end
未設定の可能性がある要素にデフォルト値を設定しています。
出力する文字コードを変更するにはoutput_encoding=が使えます。
もし、変換できないエンコーディングを指定された場合は
RSS::UnknownConversionMethodError例外が発... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (36.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...自身であると定義されました
((<ruby-bugs-ja:313>))。なんだかよくわかりません(^^;
class << Object
p [self.id, self]
class << self
p [self.id, self]
end
end
=> ruby 1.6.7 (2002-03-01) [i586-linux]......そうです
((<ruby-bugs-ja:324>))。さあっぱりわかりません(^^;;
class << Object.new
class << self.superclass
p [self.id, self]
end
class << self
p [self.superclass.id, self.superclass]
end
end
=>......p Regexp.new(//is, Regexp::EXTENDED, "e")
=> ruby 1.6.8 (2003-08-03) [i586-linux]
//xe
=> -:1: warning: flags and encoding ignored
ruby 1.8.0 (2003-02-16) [i586-linux]
//is
=== String
: ((<String#chomp|String/chomp>)) [change]
: ((<Strin... -
rexml
/ parsers / sax2parser (30.0) -
SAX2 と同等の API を持つストリーム式の XML パーサ。
...Parser.new(<<XML)
<root n="0">
<a n="1">111</a>
<b n="2">222</b>
<a n="3">333</a>
</root>
XML
elements = []
parser.listen(:start_element){|uri, localname, qname, attrs|
elements << [qname, attrs]
}
as = []
parser.listen(:start_element, ["a"]){|uri, localname, qname, attrs|
as << [qname, a......ttrs]
}
texts = []
parser.listen(:characters, ["a"]){|c| texts << c }
parser.parse
elements # => [["root", {"n"=>"0"}], ["a", {"n"=>"1"}], ["b", {"n"=>"2"}], ["a", {"n"=>"3"}]]
as # => [["a", {"n"=>"1"}], ["a", {"n"=>"3"}]]
texts # => ["111", "333"]
//}
//emlist[仕様確認サンプル][ruby]{
req......uire 'rexml/parsers/sax2parser'
require 'rexml/sax2listener'
xml = <<EOS
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<!DOCTYPE root SYSTEM "foo" [
<!ELEMENT root (a+)>
<!ELEMENT a>
<!ENTITY bar "barbarbarbar">
<!ATTLIST a att CDATA #REQUIRED x...