別のキーワード
ライブラリ
- English (60)
- ビルトイン (12)
- csv (12)
-
net
/ telnet (2) - optparse (24)
- pathname (24)
-
rexml
/ document (36) -
rinda
/ rinda (12) - strscan (132)
クラス
- Object (12)
- OptionParser (24)
- Pathname (24)
-
REXML
:: Elements (12) -
REXML
:: Entity (12) -
REXML
:: XPath (12) - StringScanner (132)
モジュール
- Kernel (60)
キーワード
-
$ LAST _ MATCH _ INFO (12) -
$ LAST _ PAREN _ MATCH (12) -
$ MATCH (12) -
$ POSTMATCH (12) -
$ PREMATCH (12) - CSV (12)
-
SCRIPT
_ LINES _ _ (12) - Telnet (2)
- Template (12)
- accept (24)
-
check
_ until (12) - fnmatch (12)
- irb (12)
- match? (12)
- matched (12)
- matched? (12)
-
matched
_ size (12) - matches? (12)
-
post
_ match (12) -
pre
_ match (12) -
rexml
/ document (12) -
ruby 1
. 6 feature (12) -
ruby 1
. 8 . 4 feature (12) -
ruby 1
. 9 feature (12) -
scan
_ full (12) -
scan
_ until (12) -
skip
_ until (12) - sub (12)
-
to
_ a (12) - unscan (12)
検索結果
-
Rinda
:: Template (60.0) -
タプルのマッチングのためのクラスです。 ユーザがこのクラスを直接使うことはありません。
...=== 例
require 'rinda/rinda'
template = Rinda::Template.new(['abc', nil, nil])
template.match(['abc', 2, 5]) # => true
template.match(['hoge', 2, 5]) # => false
template = Rinda::Template.new([String, Integer, nil])
template.match(['abc', 2, 5]) # => true
template.match(['abcd', 2......te.match([/^abc/, Integer, nil]) # => true
template.match(['abc', 2, 5]) # => true
template.match(['def', 2, 5]) # => false
template = Rinda::Template.new({'name' => String, 'age' => Integer})
template.match({'name' => 'seki', 'age' => 0x20}) # => true
template.match({'... -
irb (60.0)
-
irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
...で一行ずつ評価されます。
: irb_require(path)
Ruby の require の irb 版です。
ファイル path を現在の irb インタプリタ上で実行します。
path に Ruby スクリプトを指定した場合は、Kernel.#require と異な
り、path の内容を irb で一......ように、irb 上で一行ず
つ評価されます。require に成功した場合は true を、そうでない場合は
false を返します。
拡張ライブラリ(*.so,*.o,*.dll など)を指定した場合は単純に require さ
れます。
: help(*names)
: irb_help(*names)......RI から Ruby のドキュメントを参照します。
//emlist{
irb(main):001:0> help String#match
...
//}
names を指定しなかった場合は、RI を対話的なモードで起動します。メソッ
ド名などを入力する事でドキュメントの検索が行えます。... -
CSV (30.0)
-
このクラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
...クラスは CSV ファイルやデータに対する完全なインターフェイスを提供します。
=== 読み込み
//emlist[][ruby]{
require "csv"
csv_text = <<~CSV_TEXT
Ruby,1995
Rust,2010
CSV_TEXT
IO.write "sample.csv", csv_text
# ファイルから一行ずつ
CSV.foreach("samp......ust", "2010"]
# 文字列から一度に
p CSV.parse(csv_text)
# => [["Ruby", "1995"], ["Rust", "2010"]]
//}
=== 書き込み
//emlist[][ruby]{
require 'csv'
# ファイルへ書き込み
CSV.open("path/to/file.csv", "wb") do |csv|
csv << ["row", "of", "CSV", "data"]
csv << ["another", "row"......ourse, to accomplish this multiencoding
support. For example, <tt>:col_sep</tt>, <tt>:row_sep</tt>, and
<tt>:quote_char</tt> must be transcoded to match your data. Hopefully this
makes the entire process feel transparent, since CSV's defaults should just
magically work for you data. However, you... -
StringScanner
# unscan -> self (30.0) -
スキャンポインタを前回のマッチの前の位置に戻します。
...スキャンポインタを前回のマッチの前の位置に戻します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.unscan
s.scan(/\w+/) # => "test"
//}
@return selfを返します。
このメソッドでポインタを戻せ......。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
begin
# マッチを一度も行っていないので、例外が発生する。
s.unscan
rescue StringScanner::Error => err
puts err
# 出力例
#=> unscan failed: previous match had failed
end
p s.scan(/\w+......例
#=> unscan failed: previous match had failed
end
p s.scan(/\w+/) # => "test"
p s.scan(/\w+/) # => nil
begin
# 前回のマッチが失敗しているので、例外が発生する。
s.unscan
rescue => err
puts err
# 出力例
#=> unscan failed: previous match had failed
end
//}... -
ruby 1
. 9 feature (30.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
...16833>))
((<URL:http://eigenclass.org/hiki.rb?Changes+in+Ruby+1.9+update+4>))
=== 2006-05-22
: accept
((<ruby-core:7917>))
=== 2006-03-21
: MatchData#[] [compat]
名前による参照
((<ruby-dev:28446>))
=== 2006-03-03
: FileUtils.cp_r [lib] [compat]
remove_destination オプシ......((<zw-kdoo(2004-10-24)|URL:http://yowaken.dip.jp/tdiary/20041024.html#c02>))
=== 2004-10-20
: Proc#dup [new]
追加 ((<ruby-talk:116915>))
: require [change]
feature が $" に追加されるタイミングが load された後に変わりました。
((<ruby-list:40085>))
=== 2004-10-05......=== 2004-07-17
: Regexp#match(str, [pos]) [compat]
: String#match(re, [pos]) [compat]
省略可能な第二引数 pos が追加されました。マッチの開始位置を指定しま
す。((<ruby-core:03203>)), ((<ruby-core:03205>))
p(/(.)/.match("foobar", 4).captures)... -
REXML
:: Elements # to _ a(xpath = nil) -> [REXML :: Element] (24.0) -
すべての子要素の配列を返します。
...列を返します。
REXML::Elements#each と同様、REXML::XPath.match などと
異なり、要素以外の子ノードは無視されます。
@param xpath XPath文字列
//emlist[][ruby]{
require 'rexml/document'
require 'rexml/xpath'
doc = REXML::Document.new '<a>sean<b/>elliott<c/></a>'
d......oc.root.elements.to_a # => [<b/>, <c/>]
doc.root.elements.to_a("child::node()") # => [<b/>, <c/>]
REXML::XPath.match(doc.root, "child::node()") # => ["sean", <b/>, "elliott", <c/>]
//}... -
Net
:: Telnet (18.0) -
このクラスは telnet のクライアント機能を提供します。
...しておいて Net::Telnet#cmd をうまく動作させることが
できるかもしれません。
また、Net::Telnet#cmd を呼ぶごとに "Match" を
指定しても同様のことができます。
また、Net::Telnet#puts や Net::Telnet#waitfor を
直接使ってやりとりするこ......用例
ログインしてコマンドを送る例、リモートホストから返ってきた文字列は
すべて標準出力に表示する
require 'net/telnet'
# リモートホスト "foobar" に接続
# タイムアウトは 10 秒
localhost = Net::Telnet.new("Host" => "localhost",......ose
POP サーバにメールが来ているかどうかを見る。リモートホストからきた文字列は
すべて標準出力に表示
require 'net/telnet'
# リモートホスト(POPサーバ) "foobar" に接続
# ポート番号は110(POPのwell-knownポート)、
# "Telnetmode... -
Object
:: SCRIPT _ LINES _ _ -> Hash (18.0) -
ソースファイル別にまとめられたソースコードの各行。
...どで利用されています。
また、 Kernel.#eval によるコンパイルは対象にはなりません。
例:
require 'pp'
SCRIPT_LINES__ = {}
require 'English'
pp SCRIPT_LINES__
# => {"/usr/local/lib/ruby/1.6/English.rb"=>
# ["alias $ERROR_INFO......$!\n",
# "alias $ERROR_POSITION $@\n",
# "alias $LOADED_FEATURES $\"\n",
# :
# :
# "alias $POSTMATCH $'\n",
# "alias $LAST_PAREN_MATCH $+\n"]}... -
OptionParser
# accept(klass , pat = / . * / ) {|str| . . . } -> () (18.0) -
OptionParser.accept と同様ですが、 登録したブロックはレシーバーに限定されます。
...。
@param klass クラスオブジェクトを与えます。
@param pat match メソッドを持ったオブジェクト(Regexp オブジェクトなど)を与えます。
//emlist[例][ruby]{
require "optparse"
require "time"
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.... -
OptionParser
. accept(klass , pat = / . * / ) {|str| . . . } -> () (18.0) -
オプションの引数を文字列から Ruby のオブジェクトに変換するための ブロックを登録します。すべての OptionParser インスタンスに共通です。
...ンスタンスに変換されてから、OptionParser#on メソッドで登録したブロックに渡されます。
//emlist[][ruby]{
require "optparse"
require "time"
OptionParser.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end......しては変換用のブロックがデフォルトで登録されて
います。OptionParser#on を参照して下さい。
@param klass クラスオブジェクトを与えます。
@param pat match メソッドを持ったオブジェクト(Regexp オブジェクトなど)を与えます。...