るりまサーチ (Ruby 2.6.0)

最速Rubyリファレンスマニュアル検索!
291件ヒット [201-291件を表示] (0.104秒)

別のキーワード

  1. _builtin puts
  2. csv puts
  3. stringio puts
  4. io puts
  5. xmp puts

ライブラリ

キーワード

検索結果

<< < 1 2 3 >>

Shell::CommandProcessor#foreach(path = nil, &block) -> () (22.0)

pathがファイルなら, File#foreach pathがディレクトリなら, Dir#foreach の動作をします。

pathがファイルなら, File#foreach
pathがディレクトリなら, Dir#foreach
の動作をします。

@param path ファイルもしくはディレクトリのパスを文字列で指定します。

使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.foreach("/tmp"){|f|
puts f
}

Shell::CommandProcessor#mkdir(*path) -> Array (22.0)

Dir.mkdirと同じです。 (複数可)

Dir.mkdirと同じです。 (複数可)

@param path 作成するディレクトリ名を文字列で指定します。

@return 作成するディレクトリの一覧の配列を返します。

使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
begin
p sh.mkdir("foo") #=> ["foo"]
rescue => err
puts err
end

Shell::Filter#each(rs = nil) -> () (22.0)

フィルタの一行ずつをblockに渡します。

フィルタの一行ずつをblockに渡します。

@param rs レコードセパレーターを表す文字列を指定します。
nil ならば、Shell.record_separatorの値が使用されます。

使用例
require 'shell'
sh = Shell.new
sh.cat("/etc/passwd").each { |line|
puts line
}

Shell::Filter#foreach(path = nil, &block) -> () (22.0)

pathがファイルなら, File#foreach pathがディレクトリなら, Dir#foreach の動作をします。

pathがファイルなら, File#foreach
pathがディレクトリなら, Dir#foreach
の動作をします。

@param path ファイルもしくはディレクトリのパスを文字列で指定します。

使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
sh.foreach("/tmp"){|f|
puts f
}

Shell::Filter#mkdir(*path) -> Array (22.0)

Dir.mkdirと同じです。 (複数可)

Dir.mkdirと同じです。 (複数可)

@param path 作成するディレクトリ名を文字列で指定します。

@return 作成するディレクトリの一覧の配列を返します。

使用例
require 'shell'
Shell.verbose = false
sh = Shell.new
begin
p sh.mkdir("foo") #=> ["foo"]
rescue => err
puts err
end

絞り込み条件を変える

Shell::Filter#to_a -> [String] (22.0)

実行結果を文字列の配列で返します。

実行結果を文字列の配列で返します。

require 'shell'
Shell.def_system_command("wc")
sh = Shell.new
puts sh.cat("/etc/passwd").to_a

Shell::Filter#to_s -> String (22.0)

実行結果を文字列で返します。

実行結果を文字列で返します。

require 'shell'
Shell.def_system_command("wc")
sh = Shell.new

sh.transact {
puts (cat("/etc/passwd") | wc("-l")).to_s
}

Shell::Filter#|(filter) -> object (22.0)

パイプ結合を filter に対して行います。

パイプ結合を filter に対して行います。

@param filter Shell::Filter オブジェクトを指定します。

@return filter を返します。

使用例
require 'shell'
Shell.def_system_command("tail")
Shell.def_system_command("head")
Shell.def_system_command("wc")
sh = Shell.new
sh.transact {
i = 1
while i <= (cat("/etc/passwd") | wc(...

SignalException#signm -> String (22.0)

self.message のエイリアスです。

self.message のエイリアスです。

//emlist[例][ruby]{
begin
Process.kill('HUP', Process.pid)
sleep
rescue SignalException => e
puts e.signm # => SIGHUP
end
//}

StringScanner#peek(bytes) -> String (22.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使ってください。

@param bytes 0 以上の整数を指定します。
ただし、スキャン対象の...

絞り込み条件を変える

StringScanner#peep(bytes) -> String (22.0)

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

スキャンポインタから長さ bytes バイト分だけ文字列を返します。

//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.peek(4) # => "test"
//}

また、このメソッドを実行してもスキャンポインタは移動しません。

StringScanner#peep は将来のバージョンでは削除される予定です。
代わりに StringScanner#peek を使ってください。

@param bytes 0 以上の整数を指定します。
ただし、スキャン対象の...

StringScanner#pointer=(n) (22.0)

スキャンポインタのインデックスを n にセットします。

スキャンポインタのインデックスを n にセットします。

@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。

@return n を返します。

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\...

StringScanner#pos=(n) (22.0)

スキャンポインタのインデックスを n にセットします。

スキャンポインタのインデックスを n にセットします。

@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。

@return n を返します。

//emlist[例][ruby]{
require 'strscan'

s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\...

Struct#each -> Enumerator (22.0)

構造体の各メンバに対して繰り返します。

構造体の各メンバに対して繰り返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe.each {|x| puts(x) }

# => Joe Smith
# 123 Map...

Struct#each {|value| ... } -> self (22.0)

構造体の各メンバに対して繰り返します。

構造体の各メンバに対して繰り返します。

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe.each {|x| puts(x) }

# => Joe Smith
# 123 Map...

絞り込み条件を変える

Thread#[](name) -> object | nil (22.0)

name に対応したスレッドに固有のデータを取り出します。 name に対応するスレッド固有データがなければ nil を返し ます。

name に対応したスレッドに固有のデータを取り出します。
name に対応するスレッド固有データがなければ nil を返し
ます。

@param name スレッド固有データのキーを文字列か Symbol で指定します。

//emlist[例][ruby]{
[
Thread.new { Thread.current["name"] = "A" },
Thread.new { Thread.current[:name] = "B" },
Thread.new { Thread.current["name"] = "C" }
].each do |th|
th.join...

Thread#wakeup -> self (22.0)

停止状態(stop)のスレッドを実行可能状態(run)にします。

停止状態(stop)のスレッドを実行可能状態(run)にします。

@raise ThreadError 死んでいるスレッドに対して実行すると発生します。

//emlist[例][ruby]{
c = Thread.new { Thread.stop; puts "hey!" }
sleep 0.1 while c.status!='sleep'
c.wakeup
c.join
# => "hey!"
//}

@see Thread#run, Thread.stop

Thread::Backtrace::Location#absolute_path -> String (22.0)

self が表すフレームの絶対パスを返します。

self が表すフレームの絶対パスを返します。

//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end

Foo.new(0..2).locations.map do |call|
puts call.absolute_path
end

# => /path/to/foo.rb
# /path/to/foo.rb
# /path/to/foo.rb
//}

@see...

Thread::Backtrace::Location#base_label -> String (22.0)

self が表すフレームの基本ラベルを返します。通常、 Thread::Backtrace::Location#label から修飾を取り除いたもので構成 されます。

self が表すフレームの基本ラベルを返します。通常、
Thread::Backtrace::Location#label から修飾を取り除いたもので構成
されます。

//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end

Foo.new(0..2).locations.map do |call|
puts call.base_label
end

# => init...

Thread::Backtrace::Location#inspect -> String (22.0)

Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文 字列に変換したオブジェクトを返します。

Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文
字列に変換したオブジェクトを返します。

//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end

Foo.new(0..2).locations.map do |call|
puts call.inspect
end

# => "path/to/foo.rb:5:in ...

絞り込み条件を変える

Thread::Backtrace::Location#to_s -> String (22.0)

self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し ます。

self が表すフレームを Kernel.#caller と同じ表現にした文字列を返し
ます。

//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end

Foo.new(0..2).locations.map do |call|
puts call.to_s
end

# => path/to/foo.rb:5:in `initialize'
# path/to/foo...

TracePoint#instruction_sequence -> RubyVM::InstructionSequence (22.0)

script_compiledイベント発生時にコンパイルされた RubyVM::InstructionSequenceインスタンスを返します。

script_compiledイベント発生時にコンパイルされた
RubyVM::InstructionSequenceインスタンスを返します。

//emlist[例][ruby]{
TracePoint.new(:script_compiled) do |tp|
p tp.instruction_sequence # => <RubyVM::InstructionSequence:block in <main>@(eval):1>
end.enable do
eval("puts 'hello'")
end
//}

@raise RuntimeError :script_comp...

UNIXSocket#send_io(io) -> nil (22.0)

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

require 'socket'

s1, s2 = UNIXSocket.pair

s1.send_io STDOUT
stdout = s2.recv_io

p STDOUT.fileno #=> 1
p stdout.fileno #=> 6

stdout.puts "hello" # outputs "hello\n" to standard output.

@param io 送るファイルディスクリプタ(整数 or IOオブジェクト)

WIN32OLE#ole_typelib -> WIN32OLE_TYPELIB (22.0)

オブジェクトに対応する型情報ライブラリ(TypeLib)を WIN32OLE_TYPELIBとして返します。

オブジェクトに対応する型情報ライブラリ(TypeLib)を
WIN32OLE_TYPELIBとして返します。

OLEオートメーションではクラス、インターフェイス、メソッド、引数などの型
情報と文書情報を型情報ライブラリとして利用します。型情報ライブラリは独
立したファイル(拡張子tlb)の場合もあれば、オブジェクトのバイナリへリソー
スとして埋め込まれている場合があります。

OLEオートメーションでは型情報ライブラリの提供方法を問わずに統一したイン
ターフェイスでアプリケーションが参照できるように、オブジェクトの形式
(ITypeInfoインターフェイス)で提供します。WIN32OLEは...

WIN32OLE_EVENT#off_event(event = nil) -> () (22.0)

WIN32OLE_EVENT#on_eventで登録したブロックを解除します。

WIN32OLE_EVENT#on_eventで登録したブロックを解除します。

@param event 文字列またはシンボルで登録時に指定したイベント名を指定しま
す。nilの場合、WIN32OLE_EVENT#on_eventに対してnilを指定したブロッ
クを解除します。

ev = WIN32OLE_EVENT.new(ie, 'DWebBrowserEvents')
ev.on_event(:NavigateComplete) {|url| puts url }
...
ev.off_event(:NavigateComplete)

絞り込み条件を変える

WIN32OLE_METHOD#dispid -> Integer (22.0)

メソッドのディスパッチID(DISPID)を取得します。

メソッドのディスパッチID(DISPID)を取得します。

ディスパッチIDはメソッドの一意識別子です。WIN32OLEでは、
WIN32OLE#_invokeなどのメソッドで、呼び出すサーバのメソッドを指定
するのに利用します。

@return メソッドのDISPIDを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.dispid # => 181
...

WIN32OLE_METHOD#event? -> bool (22.0)

メソッドがイベントかどうかを取得します。

メソッドがイベントかどうかを取得します。

イベントとはこのサーバが実装しているメソッドではなく、クライアント側が
サーバ側の通知を受けるために実装するメソッドです。

@return メソッドがイベントであれば真。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event? # => true

@see WIN32OLE_EVENT

WIN32OLE_METHOD#event_interface -> String | nil (22.0)

メソッドがイベントの場合、イベントのインターフェイス名を取得します。

メソッドがイベントの場合、イベントのインターフェイス名を取得します。

@return メソッドがイベントであれば、イベントのインターフェイス名を返し
ます。イベントでなければnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event_interface # => WorkbookEvents

WIN32OLE_METHOD#helpcontext -> Integer | nil (22.0)

メソッドのヘルプコンテキストを取得します。

メソッドのヘルプコンテキストを取得します。

ヘルプコンテキストは、関連するヘルプファイル上のトピック位置を示す整数
値です。

@return ヘルプコンテキストを返します。未定義の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpcontext # => 65717

WIN32OLE_METHODオブジェクトを引数として、WI...

WIN32OLE_METHOD#helpfile -> String | nil (22.0)

ヘルプファイルのパス名を取得します。

ヘルプファイルのパス名を取得します。

メソッドにヘルプファイルが関連付けられている場合、該当ヘルプファイルの
パス名を返します。

@return ヘルプファイルのパス名を文字列で返します。ヘルプファイルが未定
義ならばnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.helpfile # => C:\...\VBAXL9.CH...

絞り込み条件を変える

WIN32OLE_METHOD#helpstring -> String | nil (22.0)

メソッドのヘルプ文字列を取得します。

メソッドのヘルプ文字列を取得します。

helpstringは、IDEがメソッドのバルーンヘルプを表示するような場合に利用可
能な、1行程度でメソッドを説明する文字列です。

@return ヘルプ文字列を返します。未定義ならばnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
method = WIN32OLE_METHOD.new(tobj, 'Navigate')
puts method.helpstring # => Navigates to a URL o...

WIN32OLE_METHOD#invkind -> Integer (22.0)

メソッドの種類を示すINVOKEKIND列挙値を取得します。

メソッドの種類を示すINVOKEKIND列挙値を取得します。

ここで言うメソッドの種類というのは、OLEオートメーションクライアントの記
述言語がどのような形式でサーバ呼び出しを記述すべきかを指定した属性値で
す。

@return メソッドのINVOKEKINDを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.invkind # => 1

INVOKE...

WIN32OLE_METHOD#invoke_kind -> String (22.0)

メソッドの種類を文字列で取得します。

メソッドの種類を文字列で取得します。

ここで言うメソッドの種類というのは、OLEオートメーションクライアントの記
述言語がどのような形式でサーバ呼び出しを記述すべきかを指定した属性値で
す。

@return メソッドの種類を示す文字列を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.invoke_kind # => "FUNC"

返送値は以下のい...

WIN32OLE_METHOD#name -> String (22.0)

メソッド名を取得します。

メソッド名を取得します。

@return メソッド名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.name # => SaveAs

WIN32OLE_METHOD#offset_vtbl -> Integer (22.0)

このメソッドのVTBLのオフセットを取得します。

このメソッドのVTBLのオフセットを取得します。

VTBLはC++やCでメソッドを呼び出すために利用する関数ポインタのテーブルです。

@return メソッドのVTBL上のオフセットを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.offset_vtbl # => 40

絞り込み条件を変える

WIN32OLE_METHOD#return_type -> String (22.0)

メソッドの返り値の型名を取得します。

メソッドの返り値の型名を取得します。

@return 返り値の型名を示す文字列を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.return_type # => BOOL

OLEオートメーションの型名は、対応するWIN32OLE...

WIN32OLE_METHOD#return_vtype -> Integer (22.0)

メソッドの返り値の型を示す数値を取得します。

メソッドの返り値の型を示す数値を取得します。

@return 返り値の型を示す数値(VARENUM)を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.return_vtype # => 11

VARENUMの定義は、Platfo...

WIN32OLE_METHOD#size_opt_params -> Integer | nil (22.0)

オプションパラメータ数を取得します。

オプションパラメータ数を取得します。

@return オプションパラメータ数を整数で返します。メソッドの詳細情報を取
得できない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_opt_params # => 5

WIN32OLE_METHOD#size_params -> Integer | nil (22.0)

パラメータ数を取得します。

パラメータ数を取得します。

@return パラメータ数を整数で返します。メソッドの詳細情報を取得できない
場合はnilを返します。


tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_params # => 12

WIN32OLE_METHOD#to_s -> String (22.0)

メソッド名を取得します。

メソッド名を取得します。

@return メソッド名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.name # => SaveAs

絞り込み条件を変える

WIN32OLE_METHOD#visible? -> bool (22.0)

このメソッドがクライアントに対して公開されているか(可視性を持つか)ど うかを返します。

このメソッドがクライアントに対して公開されているか(可視性を持つか)ど
うかを返します。

@return メソッドが公開されていれば真。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbooks')
method = WIN32OLE_METHOD.new(tobj, 'Add')
puts method.visible? # => true

WIN32OLE_PARAM#input? -> bool (22.0)

パラメータがクライアントからサーバへ与えるものかを判定します。

パラメータがクライアントからサーバへ与えるものかを判定します。

OLEオートメーションのパラメータは、in(クライアントからサーバへ与える。
WIN32OLE_PARAM#input?が真)、out(サーバがクライアントへ与える。
WIN32OLE_PARAM#output?が真)および、inout(クライアントからサーバ
へ与え、サーバがクライアントへ与える)の3種類の方向属性のいずれかを持ち
ます。

input?メソッドはin属性またはinout属性なら真を返します。

@return メソッドの方向属性がinまたはinoutならば真を返します。

tobj = WIN32OLE...

WIN32OLE_PARAM#name -> String (22.0)

パラメータ名を取得します。

パラメータ名を取得します。

@return パラメータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename

WIN32OLE_PARAM#ole_type -> String (22.0)

パラメータの型名を取得します。

パラメータの型名を取得します。

@return パラメータの型名を示す文字列を返します。
パラメータの型情報が見つからない場合は、"unknown type"を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.ole_type # => VARIANT

OLEオートメーション...

WIN32OLE_PARAM#optional? -> bool (22.0)

パラメータがオプションかどうかを取得します。

パラメータがオプションかどうかを取得します。

@return パラメータがオプション(省略可能)であれば真を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts "#{param1.name} #{param1.optional?}" # => Filename true

絞り込み条件を変える

WIN32OLE_PARAM#output? -> bool (22.0)

パラメータがクライアントからの結果を受け取るためのものかを判定します。

パラメータがクライアントからの結果を受け取るためのものかを判定します。

OLEオートメーションのパラメータは、in(クライアントからサーバへ与える。
WIN32OLE_PARAM#input?が真)、out(サーバがクライアントへ与える。
WIN32OLE_PARAM#output?が真)および、inout(クライアントからサーバ
へ与え、サーバがクライアントへ与える)の3種類の方向属性のいずれかを持ち
ます。

output?メソッドはout属性またはinout属性なら真を返します。

@return メソッドの方向属性がoutまたはinoutならば真を返します。

tobj = W...

WIN32OLE_PARAM#retval? -> bool (22.0)

パラメータが戻り値かどうかを判定します。

パラメータが戻り値かどうかを判定します。

OLEオートメーションの規定では、メソッドの戻り値は引数リストの最右端のパ
ラメータをout属性(WIN32OLE_PARAM#output?が真)とすることで実現し
ます。ただし、そのパラメータをOLEオートメーション呼び出しを記述する言語
が戻り値のように扱うか、それとも引数リストに並べるかはretval属性によっ
て決定されます。

retval?メソッドは、戻り値として記述する場合に真となります。

@return パラメータが戻り値として扱われる場合に真を返します。

tobj = WIN32OLE_TYPE.new('DirectX...

WIN32OLE_PARAM#to_s -> String (22.0)

パラメータ名を取得します。

パラメータ名を取得します。

@return パラメータ名を返します。名前付き引数形式でメソッドを呼び出すときに指定します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 9.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
param1 = method.params[0]
puts param1.name # => Filename

WIN32OLE_TYPE#default_event_sources -> [WIN32OLE_TYPE] (22.0)

型が持つソースインターフェイスを取得します。

型が持つソースインターフェイスを取得します。

default_event_sourcesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスがサポートするデフォルトのソースインターフェイス(イ
ベントの通知元となるインターフェイス)を返します。

@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大でも1インターフェイスです。ソースインターフェイスを持
たない場合は空配列を返します。

tobj = ...

WIN32OLE_TYPE#guid -> String | nil (22.0)

この型のGUID(グローバル一意識別子)を取得します。

この型のGUID(グローバル一意識別子)を取得します。

@return GUIDを文字列で返します。GUIDを持たない型の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
puts tobj.guid # => {00024500-0000-0000-C000-000000000046}

GUIDは、COMのクラス識別子(CLSID)、インターフェイス識別子(IID)など多数の
領域でWindows上のオブジェクトの識別に利用される128ビットの...

絞り込み条件を変える

WIN32OLE_TYPE#helpcontext -> Integer | nil (22.0)

この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得 します。

この型に関連するヘルプファイルのトピックID(ヘルプコンテキスト)を取得
します。

@return 型に関連するヘルプコンテキストを整数で返します。ヘルプコンテキ
ストが登録されていない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpcontext # => 131185

WIN32OLE_TYPE#helpfile -> String | nil (22.0)

オブジェクトに関連付けられたヘルプファイルのフルパス名。

オブジェクトに関連付けられたヘルプファイルのフルパス名。

ここで返されたヘルプファイルを表示するには、
WIN32OLE#ole_show_helpメソッドを呼び出します。

オブジェクトがヘルプファイルを持たない場合はnilを返します。

@return オブジェクトに関連付けられたヘルプファイルのフルパス名を文字列で返します。
ヘルプファイルが未定義の場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.helpf...

WIN32OLE_TYPE#inspect -> String (22.0)

selfを説明的な文字列で表現します。

selfを説明的な文字列で表現します。

@return "#<WIN32OLE_TYPE"とWIN32OLE_TYPE#to_sの結果を「:」で結合
し、「>」で閉じた文字列を返します。

x = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts x.inspect #=> #<WIN32OLE_TYPE:Worksheet>

@see WIN32OLE_TYPE#to_s

WIN32OLE_TYPE#ole_typelib -> WIN32OLE_TYPELIB | nil (22.0)

この型を登録してある型情報ライブラリ(TypeLib)を取得します。

この型を登録してある型情報ライブラリ(TypeLib)を取得します。

@return この型を登録しているTypeLibをWIN32OLE_TYPELIBオブジェクト
として返します。見つからない場合はnilを返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.ole_typelib.name # => 'Microsoft Excel 14.0 Object Library'

WIN32OLE_TYPE#variables -> [WIN32OLE_VARIABLE] (22.0)

型が持つ変数を取得します。

型が持つ変数を取得します。

型がEnum(列挙型)やユーザ定義型の場合、メンバ変数の情報を
WIN32OLE_VARIABLEオブジェクトの配列として返します。

@return 型が持つ変数情報をWIN32OLE_VARIABLEの配列として返します。
変数を持たない場合は空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
vars = to...

絞り込み条件を変える

WIN32OLE_TYPELIB#guid -> String (22.0)

TypeLibのGUIDを取得します。

TypeLibのGUIDを取得します。

@return TypeLibのGUIDを文字列で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.guid # => '{00020813-0000-0000-C000-000000000046}'

WIN32OLE_TYPELIB#major_version -> Integer (22.0)

TypeLibのメジャーバージョン番号を取得します。

TypeLibのメジャーバージョン番号を取得します。

@return TypeLibのメジャーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.major_version # => 1

WIN32OLE_TYPELIB#minor_version -> Integer (22.0)

TypeLibのマイナーバージョン番号を取得します。

TypeLibのマイナーバージョン番号を取得します。

@return TypeLibのマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.minor_version # => 7

WIN32OLE_TYPELIB#name -> String (22.0)

TypeLibのドキュメント文字列を取得します。

TypeLibのドキュメント文字列を取得します。

ドキュメント文字列は、コンテキストヘルプなどに利用可能なTypeLibの簡単な
説明文で、通常バージョン番号を含みます。

@return TypeLibのドキュメント文字列を返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.name # => 'Microsoft Excel 14.0 Object Library'

WIN32OLE_TYPELIB#path -> String (22.0)

TypeLibのパス名を取得します。

TypeLibのパス名を取得します。

@return TypeLibのパス名を文字列で返します。この値はレジストリの登録値を
そのまま利用するため、Rubyのパス名形式(ディレクトリ区切りは
「/」)ではなく、Windowsのパス名形式(ディレクトリ区切りは「\」)
です。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tli...

絞り込み条件を変える

WIN32OLE_TYPELIB#to_s -> String (22.0)

TypeLibのドキュメント文字列を取得します。

TypeLibのドキュメント文字列を取得します。

ドキュメント文字列は、コンテキストヘルプなどに利用可能なTypeLibの簡単な
説明文で、通常バージョン番号を含みます。

@return TypeLibのドキュメント文字列を返します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.name # => 'Microsoft Excel 14.0 Object Library'

WIN32OLE_TYPELIB#version -> Float (22.0)

TypeLibのバージョン番号を取得します。

TypeLibのバージョン番号を取得します。

@return TypeLibのバージョン番号を整数部にメジャーバージョン番号、小数点
数部にマイナーバージョン番号を設定したFloatで返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.version # => 1.7

WIN32OLE_TYPELIB#visible? -> bool (22.0)

TypeLibの情報が公開情報かどうかを照会します。

TypeLibの情報が公開情報かどうかを照会します。

このメソッドは、TypeLibの属性(TLIBATTR)のフラグ値が0、制限
(LIBFLAG_FRESTRICTED)、コントロール内部使用(LIBFLAG_FHIDDEN)のいずれか
であれば非公開TypeLibとみなして偽を返します。

@return TypeLibが公開可能であれば真を返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。

tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Li...

WIN32OLE_VARIABLE#name -> String (22.0)

変数名を取得します。

変数名を取得します。

@return 変数名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end

WIN32OLE_VARIABLE#ole_type -> String (22.0)

変数の型を取得します。

変数の型を取得します。

@return 変数の型名を文字列で返します。型名を文字列に変換できない場合は、
「Unknown Type nn」(nnはバリアント型を示す数値)の形式の文字列
を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.ole_type} #{variabl...

絞り込み条件を変える

WIN32OLE_VARIABLE#ole_type_detail -> [String] (22.0)

変数の型と属性を取得します。

変数の型と属性を取得します。

@return 変数の型と属性を文字列配列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft XML, v5.0', 'tagSTATSTG')
tobj.variables.each do |v|
puts "#{v.ole_type} [#{v.ole_type_detail.join(', ')}] #{v.name}"
end

出力結果

Unknown Type 31 [] pwcsName # => VT_LPWSTR はWIN32OLE::VARIANTで未定義なので変換でき...

WIN32OLE_VARIABLE#to_s -> String (22.0)

変数名を取得します。

変数名を取得します。

@return 変数名を文字列で返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}" # => xlChart, xlDialogSheet, ...
end

WIN32OLE_VARIABLE#value -> object | nil (22.0)

変数の値を取得します。

変数の値を取得します。

変数情報によってはenum値のように定数値を持つものがあります。valueメソッ
ドはこのような定数値を返します。

@return この変数が持つ定数値。値を持たない場合はnilを返します。


tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
variables = tobj.variables
variables.each do |variable|
puts "#{variable.name}=#{variable.value...

WIN32OLE_VARIABLE#variable_kind -> String (22.0)

変数の種類(VARKIND)を取得します。

変数の種類(VARKIND)を取得します。

この変数の種類を示す文字列を返します。

@return VARKINDに対応する文字列を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.variable_kind}.uniq # => CONSTANT

返送値は以下のいずれかとなります。

: PERINSTANCE
インスタンス毎の変数。構造体やユーザ定義体のフィールド。(0)
: STATI...

WIN32OLE_VARIABLE#varkind -> Integer (22.0)

変数の種類(VARKIND)を取得します。

変数の種類(VARKIND)を取得します。

この変数の種類を示す数値を返します。

@return VARKINDに対応する数値を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.varkind}.uniq # => 2

数値の意味については、WIN32OLE_VARIABLE#variable_kindの説明を参照してください。

絞り込み条件を変える

WIN32OLE_VARIABLE#visible? -> bool (22.0)

変数の可視性を取得します。

変数の可視性を取得します。

@return publicアクセス可能であれば真を返します。

tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.visible?}.uniq # => true

Zlib::GzipReader#each_byte -> Enumerator (22.0)

IO クラスの同名メソッドIO#each_byteと同じです。

IO クラスの同名メソッドIO#each_byteと同じです。

但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。

gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::Leng...

Zlib::GzipReader#each_byte {|byte| ... } -> nil (22.0)

IO クラスの同名メソッドIO#each_byteと同じです。

IO クラスの同名メソッドIO#each_byteと同じです。

但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。

gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::Leng...

Zlib::GzipReader#pos -> Integer (22.0)

現在までに展開したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

現在までに展開したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。

require 'zlib'

Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}

Zlib::GzipReader.open('hoge.gz'){|gz|
while c = gz.getc
printf "%c, %d\n", c, gz.pos
end
}
# 実行例
#=> h, 1
#=> o, 2
#=> g, 3
#=> e, 4
...

Zlib::GzipReader#read(length = nil) -> String | nil (22.0)

IO クラスの同名メソッドIO#readと同じです。

IO クラスの同名メソッドIO#readと同じです。

但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。

gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::LengthErr...

絞り込み条件を変える

Zlib::GzipReader#tell -> Integer (22.0)

現在までに展開したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

現在までに展開したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。

require 'zlib'

Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
}

Zlib::GzipReader.open('hoge.gz'){|gz|
while c = gz.getc
printf "%c, %d\n", c, gz.pos
end
}
# 実行例
#=> h, 1
#=> o, 2
#=> g, 3
#=> e, 4
...

Zlib::GzipWriter#<<(str) -> self (22.0)

str を出力します。str が文字列でない場合は to_s を用いて 文字列に変換します。

str を出力します。str が文字列でない場合は to_s を用いて
文字列に変換します。

@param str 出力したいオブジェクトを与えます。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz << "hoge" << "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
...

Zlib::GzipWriter#comment=(string) (22.0)

gzip ファイルのヘッダーに記録するコメントを指定します。

gzip ファイルのヘッダーに記録するコメントを指定します。

Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。

@param string gzip ファイルのヘッダーに記録するコメントを文字列で指定します。
@return string を返します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST...

Zlib::GzipWriter#mtime=(time) (22.0)

gzip ファイルのヘッダーに記録する最終更新時間を指定します。

gzip ファイルのヘッダーに記録する最終更新時間を指定します。

Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。

@param time gzip ファイルのヘッダーに記録する最終更新時間を整数で指定します。
@return time を返します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_...

Zlib::GzipWriter#orig_name=(filename) (22.0)

gzip ファイルのヘッダーに記録する元ファイル名を指定します。

gzip ファイルのヘッダーに記録する元ファイル名を指定します。

Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。

@param filename gzip ファイルのヘッダーに記録する元ファイル名を文字列で指定します。
@return filename を返します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zl...

絞り込み条件を変える

Zlib::GzipWriter#pos -> Integer (22.0)

現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

現在までに圧縮したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。

require 'zlib'

filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts gz.pos
}
}
#=> 1
#=> 2
#=> 3
...

Zlib::GzipWriter#print(*str) -> nil (22.0)

引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。

引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。

@param str 出力するオブジェクトを指定します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.print "ugo"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}...

Zlib::GzipWriter#printf(format, *args) -> nil (22.0)

C 言語の printf と同じように、format に従い引数 を文字列に変換して、自身に出力します。

C 言語の printf と同じように、format に従い引数
を文字列に変換して、自身に出力します。

@param format フォーマット文字列を指定します。print_format を参照してください。

@param args フォーマットされるオブジェクトを指定します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.printf("\n%9s", "b...

Zlib::GzipWriter#putc(ch) -> object (22.0)

文字 ch を自身に出力します。

文字 ch を自身に出力します。

ch が数値なら 0 〜 255 の範囲の対応する文字を出力します。
ch が文字列なら、その先頭 1byte を出力します。
どちらでもない場合は、ch.to_int で整数に変換を試みます。

@param ch 出力する文字を数値または文字列で指定します。

@return ch を返します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
...

Zlib::GzipWriter#tell -> Integer (22.0)

現在までに圧縮したデータの長さの合計を返します。 ファイルポインタの位置ではないことに注意して下さい。

現在までに圧縮したデータの長さの合計を返します。
ファイルポインタの位置ではないことに注意して下さい。

require 'zlib'

filename='hoge1.gz'
f = File.open(filename, "w")
Zlib::GzipWriter.wrap(f, Zlib::BEST_COMPRESSION){|gz|
(1..10).each {|i|
gz.print i
puts gz.pos
}
}
#=> 1
#=> 2
#=> 3
...

絞り込み条件を変える

Zlib::GzipWriter#write(*str) -> Integer (22.0)

自身に str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。

自身に str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。

@param str 出力する文字列を指定します。文字列でない場合は to_s で文字列に変換します。

@return 実際に出力できたバイト数を返します。

require 'zlib'

filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.write "foo"
}
fr = File.open...

String#gsub(pattern) -> Enumerator (19.0)

文字列中で pattern にマッチした部分を順番にブロックに渡し、 その実行結果で置き換えた文字列を生成して返します。 ブロックなしの場合と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした部分を順番にブロックに渡し、
その実行結果で置き換えた文字列を生成して返します。
ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

//emlist[例][ruby]{
p 'abcabc'.gsub(/[bc]/) {|s| s.upcase } #=> "aBCaBC"
...

String#gsub(pattern) {|matched| .... } -> String (19.0)

文字列中で pattern にマッチした部分を順番にブロックに渡し、 その実行結果で置き換えた文字列を生成して返します。 ブロックなしの場合と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした部分を順番にブロックに渡し、
その実行結果で置き換えた文字列を生成して返します。
ブロックなしの場合と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@return 新しい文字列

//emlist[例][ruby]{
p 'abcabc'.gsub(/[bc]/) {|s| s.upcase } #=> "aBCaBC"
...

String#gsub(pattern, hash) -> String (19.0)

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ

//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".gsub(/[bc]/){hash[$&]} #=> "aBCaBC"
p "abcabc".gsub(/[bc]/, hash) #=> "aBCaBC"
//}

String#sub(pattern) {|matched| .... } -> String (19.0)

文字列中で pattern にマッチした最初の部分をブロックに渡し、 その評価結果で置き換えた新しい文字列を返します。 ブロックなしの sub と違い、ブロックの中からは 組み込み変数 $1, $2, $3, ... を問題なく参照できます。

文字列中で pattern にマッチした最初の部分をブロックに渡し、
その評価結果で置き換えた新しい文字列を返します。
ブロックなしの sub と違い、ブロックの中からは
組み込み変数 $1, $2, $3, ... を問題なく参照できます。

@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする

//emlist[例][ruby]{
p 'abcabc'.sub(/b/) {|s| s.upcase } #=> "aBcabc"
p 'abcabc'.sub(/b...

絞り込み条件を変える

String#sub(pattern, hash) -> String (19.0)

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

文字列中の pattern にマッチした部分をキーにして hash を引いた値で置き換えます。

@param pattern 置き換える文字列のパターン
@param hash 置き換える文字列を与えるハッシュ

//emlist[例][ruby]{
hash = {'b'=>'B', 'c'=>'C'}
p "abcabc".sub(/[bc]/){hash[$&]} #=> "aBCabc"
p "abcabc".sub(/[bc]/, hash) #=> "aBCabc"
//}
<< < 1 2 3 >>