るりまサーチ (Ruby 2.5.0)

最速Rubyリファレンスマニュアル検索!
56件ヒット [1-56件を表示] (0.110秒)
トップページ > 種類:変数[x] > クエリ:kernel[x] > バージョン:2.5.0[x] > ライブラリ:ビルトイン[x]

別のキーワード

  1. kernel exec
  2. kernel spawn
  3. kernel system
  4. kernel open
  5. kernel fail

モジュール

キーワード

検索結果

Kernel$$_ -> String | nil (27178.0)

最後に Kernel.#gets または Kernel.#readline で読み込んだ文字列です。 EOF に達した場合には、 nil になります。 (覚え方: Perlと同じ)

最後に Kernel.#gets または Kernel.#readline で読み込んだ文字列です。
EOF に達した場合には、 nil になります。
(覚え方: Perlと同じ)

Kernel.#print のような Perl 由来の幾つかのメソッドは、引数を省略すると代わりに $_ を利用します。

この変数はローカルスコープかつスレッドローカルです。
Ruby起動時の初期値は nil です。

@see Kernel.#print, Kernel.#gets, Kernel.#readline, Object::ARGF

=== 例
example.txt:
foo
bar
...

Kernel$$" -> [String] (27076.0)

Kernel.#require でロードされたファイル名を含む配列です。

Kernel.#require でロードされたファイル名を含む配列です。

Kernel.#require で同じファイルを
複数回ロードしないようにするためのロックとして使われます。

この変数はグローバルスコープです。

Kernel$$@ -> [String] | nil (27076.0)

最後に例外が発生した時のバックトレースを表す配列です。 Kernel.#raise によって設定されます。

最後に例外が発生した時のバックトレースを表す配列です。
Kernel.#raise によって設定されます。

配列の各要素はメソッドの呼び出し位置を示す文字列で形式は

"filename:line"

または

"filename:line:in `methodname'"

です。これは Kernel.#caller が返す値と同じ形式です。

$@ へ値を代入するときは、$! が nil であってはいけません。
$@ の値は、$!.backtrace の値と同じです。
また、$@ への代入は $!.set_backtrace 呼び出しと同じです。

文字列の配列でも nil で...

Kernel$$LOADED_FEATURES -> [String] (27076.0)

Kernel.#require でロードされたファイル名を含む配列です。

Kernel.#require でロードされたファイル名を含む配列です。

Kernel.#require で同じファイルを
複数回ロードしないようにするためのロックとして使われます。

この変数はグローバルスコープです。

Kernel$$> -> object (27064.0)

標準出力です。

標準出力です。

組み込み関数 Kernel.#print、Kernel.#puts や
Kernel.#p などのデフォルトの出力先となります。
初期値は Object::STDOUT です。
コマンドラインオプションオプション -i を指定した場合には
読み込み元と同じ名前のファイルを表します。

$stdout に代入するオブジェクトには
write という名前のメソッドが定義されていなければいけません。

自プロセスの標準出力をリダイレクトしたいときには、
以下のように $stdout に代入すれば十分です。

//emlist[例][ruby]{
# 標準出力の出力先を /tmp/...

絞り込み条件を変える

Kernel$$stdout -> object (27064.0)

標準出力です。

標準出力です。

組み込み関数 Kernel.#print、Kernel.#puts や
Kernel.#p などのデフォルトの出力先となります。
初期値は Object::STDOUT です。
コマンドラインオプションオプション -i を指定した場合には
読み込み元と同じ名前のファイルを表します。

$stdout に代入するオブジェクトには
write という名前のメソッドが定義されていなければいけません。

自プロセスの標準出力をリダイレクトしたいときには、
以下のように $stdout に代入すれば十分です。

//emlist[例][ruby]{
# 標準出力の出力先を /tmp/...

Kernel$$, -> String | nil (27058.0)

デフォルトの出力フィールド区切り文字列です。 Array#join で引数を省略した場合と、 Kernel.#print の各引数の間で出力されます。

デフォルトの出力フィールド区切り文字列です。
Array#join で引数を省略した場合と、
Kernel.#print の各引数の間で出力されます。

デフォルト値は nil で、空文字列と同じ結果になります。

Ruby 2.7からは nil 以外に変更することは非推奨になったため、
nil 以外を代入すると警告がでるようになりました。

この変数はグローバルスコープです。

Kernel$$\ -> String | nil (27058.0)

出力レコード区切りを表す文字列です。 Kernel.#print が最後にこの文字列を出力します。

出力レコード区切りを表す文字列です。
Kernel.#print が最後にこの文字列を出力します。

デフォルトは nil で、何も出力しません。

この変数はグローバルスコープです。

Kernel$$-I -> [String] (27046.0)

Rubyライブラリをロードするときの検索パスです。

Rubyライブラリをロードするときの検索パスです。

Kernel.#load や Kernel.#require
がファイルをロードする時に検索するディレクトリのリストを含む配列です。

起動時にはコマンドラインオプション -I で指定したディレクトリ、
環境変数 RUBYLIB の値、
コンパイル時に指定したデフォルト値
をこの順番で含みます。

以下に典型的な UNIX システム上でのロードパスを示します。

-I で指定したパス
環境変数 RUBYLIB の値
/usr/local/lib/ruby/site_ruby/VERSION サイト固有、バージョン依...

Kernel$$: -> [String] (27046.0)

Rubyライブラリをロードするときの検索パスです。

Rubyライブラリをロードするときの検索パスです。

Kernel.#load や Kernel.#require
がファイルをロードする時に検索するディレクトリのリストを含む配列です。

起動時にはコマンドラインオプション -I で指定したディレクトリ、
環境変数 RUBYLIB の値、
コンパイル時に指定したデフォルト値
をこの順番で含みます。

以下に典型的な UNIX システム上でのロードパスを示します。

-I で指定したパス
環境変数 RUBYLIB の値
/usr/local/lib/ruby/site_ruby/VERSION サイト固有、バージョン依...

絞り込み条件を変える

Kernel$$LOAD_PATH -> [String] (27046.0)

Rubyライブラリをロードするときの検索パスです。

Rubyライブラリをロードするときの検索パスです。

Kernel.#load や Kernel.#require
がファイルをロードする時に検索するディレクトリのリストを含む配列です。

起動時にはコマンドラインオプション -I で指定したディレクトリ、
環境変数 RUBYLIB の値、
コンパイル時に指定したデフォルト値
をこの順番で含みます。

以下に典型的な UNIX システム上でのロードパスを示します。

-I で指定したパス
環境変数 RUBYLIB の値
/usr/local/lib/ruby/site_ruby/VERSION サイト固有、バージョン依...

Kernel$$stdin -> object (27046.0)

標準入力です。

標準入力です。

自プロセスの標準入力をリダイレクトしたいときは
$stdin に代入すれば十分です。

//emlist[例][ruby]{
# 標準入力の入力元 /tmp/foo に変更
$stdin = File.open("/tmp/foo", "r")
gets # 入力する
$stdin = STDIN # 元に戻す
//}

ただし、Kernel.#gets など、特定の組み込みメソッドは
$stdin オブジェクトにメソッドを転送して実装されています。
従って、Kernel.#gets などが正しく動作するには、
$stdin オブジェクトに...

Kernel$$! -> Exception | nil (27028.0)

最後に例外が発生したときの Exception オブジェクトです。 該当する例外がないときは nil です。

最後に例外が発生したときの Exception オブジェクトです。
該当する例外がないときは nil です。

Kernel.#raise によって設定されます。

この変数はスレッドローカル、読み取り専用です。

Kernel$$-0 -> String | nil (27028.0)

入力レコード区切りを表す文字列です。 awk の RS 変数のように働きます。

入力レコード区切りを表す文字列です。
awk の RS 変数のように働きます。

Kernel.#gets のような「行」単位の読み込みメソッドが「行」の区切りとして使用します。
Rubyがコマンドオプション -0 付きで起動されたときには -0 で指定された値が既定値となります。そうでないとき、既定値は "\n" です。

この変数に nil を設定すると読み込みメソッドはファイル全体を一度に読み込みます。
空文字列 "" を設定するとパラグラフモードとみなされ、
2 つ以上連続した改行が「行」の区切りになります。

$/ には正規表現は使えません。

この変数はグローバルスコープです。
...

Kernel$$/ -> String | nil (27028.0)

入力レコード区切りを表す文字列です。 awk の RS 変数のように働きます。

入力レコード区切りを表す文字列です。
awk の RS 変数のように働きます。

Kernel.#gets のような「行」単位の読み込みメソッドが「行」の区切りとして使用します。
Rubyがコマンドオプション -0 付きで起動されたときには -0 で指定された値が既定値となります。そうでないとき、既定値は "\n" です。

この変数に nil を設定すると読み込みメソッドはファイル全体を一度に読み込みます。
空文字列 "" を設定するとパラグラフモードとみなされ、
2 つ以上連続した改行が「行」の区切りになります。

$/ には正規表現は使えません。

この変数はグローバルスコープです。
...

絞り込み条件を変える

Kernel$$stderr -> object (27028.0)

標準エラー出力です。

標準エラー出力です。

Ruby インタプリタが出力するエラーメッセージや
警告メッセージ、Kernel.#warn の出力先となります。
初期値は Object::STDERR です。

$stderr に代入するオブジェクトには
write という名前のメソッドが定義されていなければいけません。

自プロセスの標準エラー出力をリダイレクトしたいときには、
$stderr に代入すれば十分です。

//emlist[例][ruby]{
# 標準エラー出力の出力先を /tmp/foo に変更
$stderr = File.open("/tmp/foo", "w")
puts "foo" ...

Kernel$$$ -> Integer (27010.0)

現在実行中の Ruby プロセスのプロセス ID です。 Process.#pid と同じです。

現在実行中の Ruby プロセスのプロセス ID です。
Process.#pid と同じです。

この変数はグローバルスコープです。

Kernel$$& -> String | nil (27010.0)

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした文字列です。 最後のマッチが失敗していた場合には nil となります。

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした文字列です。
最後のマッチが失敗していた場合には nil となります。

Regexp.last_match[0] と同じです。

この変数はローカルスコープかつスレッドローカル、読み取り専用です。
Ruby起動時の初期値は nil です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)">(.*?)</a>] =~ str
p $&
end
#=> "<a href=...

Kernel$$&#39; -> String | nil (27010.0)

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした 部分より後ろの文字列です。 最後のマッチが失敗していた場合には nil となります。

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした
部分より後ろの文字列です。
最後のマッチが失敗していた場合には nil となります。

Regexp.last_match.post_match と同じです。

この変数はローカルスコープかつスレッドローカル、読み取り専用です。
Ruby起動時の初期値は nil です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)">(.*?)</a>] =~ str
p $'
en...

Kernel$$* -> [String] (27010.0)

Rubyスクリプトに与えられた引数を表す配列です。 組み込み定数 Object::ARGV の別名です。

Rubyスクリプトに与えられた引数を表す配列です。
組み込み定数 Object::ARGV の別名です。

Ruby 自身に対する引数は取り除かれています。

この変数はグローバルスコープです。

絞り込み条件を変える

Kernel$$+ -> String | nil (27010.0)

現在のスコープで最後に成功した正規表現のパターンマッチで マッチした中で最後の括弧に対応する部分文字列です。

現在のスコープで最後に成功した正規表現のパターンマッチで
マッチした中で最後の括弧に対応する部分文字列です。

最後のマッチが失敗していた場合には nil。
いくつかある選択型のパターンのどれがマッチしたのか分からない時に便利です。

この変数はローカルスコープかつスレッドローカルです。

Kernel$$-F -> Regexp | String | nil (27010.0)

String#split で引数を省略した場合の区切り文字です。

String#split で引数を省略した場合の区切り文字です。

Ruby 2.7からは nil 以外に変更することは非推奨になったため、
nil 以外を代入すると警告がでるようになりました。

nilを設定すると特殊な分割を行います。
詳細は String#split を参照してください。

コマンドラインオプション -F を指定して Ruby を起動した場合、
初期値は -F で指定した値です。
それ以外の時には初期値は nil です。

$; には任意のオブジェクトを代入できます。
ただし、String#split の仕様変更を考慮すると
常に正規表現を指定すべきです。

Ruby ...

Kernel$$-K -> nil (27010.0)

この特殊変数は何の影響も持たなくなりました。

...たなくなりました。

値を代入しても無視され、参照すると常に nil です。

>> $KCODE = true
(irb):1: warning: variable $KCODE is no longer effective; ignored
=> true
>> $KCODE
(irb):2: warning: variable $KCODE is no longer effective
=> nil

@see spec/rubycmd...

Kernel$$-W -> 0 | 1 | 2 (27010.0)

コマンドラインオプション -W を指定したとき、 そのコマンドライン引数の値が設定されます。

コマンドラインオプション -W を指定したとき、
そのコマンドライン引数の値が設定されます。

つまり、$VERBOSE の値によって以下の値を返します。

: nil
0。警告を出力しない。
: false
1。重要な警告のみ出力する。(デフォルト)
: true
2。すべての警告を出力する。

この変数には代入できません。

この変数はグローバルスコープです。

@see spec/rubycmd

Kernel$$-a -> bool (27010.0)

自動 split モードを表すフラグです。

自動 split モードを表すフラグです。

コマンドラインオプション -a を使ったとき true に設定されます。
この変数には代入できません。

この変数はグローバルスコープです。

@see spec/rubycmd

絞り込み条件を変える

Kernel$$-d -> bool (27010.0)

この値が真のときはインタプリタがデバッグモードになります。

この値が真のときはインタプリタがデバッグモードになります。

コマンドラインオプション -d でセットされます。
スクリプトから代入することもできます。

デバッグモードでは、通常モードに比べて以下の違いがあります。

* 通常時はいずれかのスレッドが例外によって終了しても
他のスレッドは実行を続けますが、デバッグモードでは
いずれかのスレッドが例外によって終了した時に
インタプリタ全体が中断されるようになります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_excep...

Kernel$$-i -> String | nil (27010.0)

in-place 置換モードで用いられます。

in-place 置換モードで用いられます。

コマンドラインオプション -i を指定したとき、空文字列になります。
-i オプションに拡張子を渡した場合にはその拡張子が文字列として格納されます。

-i オプションが指定されていない時の値は nil です。

スクリプト内で $-i に代入することもでき、
その場合は Object::ARGV の次の
ファイルを読み込み始めるタイミングで in-place 置換を開始します。

この変数はグローバルスコープです。

@see spec/rubycmd

Kernel$$-l -> bool (27010.0)

コマンドラインオプション -l を指定したとき true に設定されます。 この変数には代入できません。

コマンドラインオプション -l を指定したとき true に設定されます。
この変数には代入できません。

この変数はグローバルスコープです。

@see spec/rubycmd

Kernel$$-p -> bool (27010.0)

コマンドラインオプション -p を指定したとき true に設定されます。 この変数には代入できません。

コマンドラインオプション -p を指定したとき true に設定されます。
この変数には代入できません。

この変数はグローバルスコープです。

@see spec/rubycmd

Kernel$$-v -> bool | nil (27010.0)

冗長メッセージフラグです。Rubyインタプリタへの コマンドラインオプション -v でセットされます。

冗長メッセージフラグです。Rubyインタプリタへの
コマンドラインオプション -v でセットされます。

警告レベルは三段階あり、それぞれ以下の通りです。

: nil
警告を出力しない
: false
重要な警告のみ出力 (デフォルト)
: true
すべての警告を出力する

$VERBOSE に nil, false 以外を代入すると値は true になります。

$VERBOSE の値はコマンドラインオプション
-W でも設定できます。
-W0 オプションで nil、
-W1 オプションで false、
-W2, -W オプションで true が設定されます。
-...

絞り込み条件を変える

Kernel$$-w -> bool | nil (27010.0)

冗長メッセージフラグです。Rubyインタプリタへの コマンドラインオプション -v でセットされます。

冗長メッセージフラグです。Rubyインタプリタへの
コマンドラインオプション -v でセットされます。

警告レベルは三段階あり、それぞれ以下の通りです。

: nil
警告を出力しない
: false
重要な警告のみ出力 (デフォルト)
: true
すべての警告を出力する

$VERBOSE に nil, false 以外を代入すると値は true になります。

$VERBOSE の値はコマンドラインオプション
-W でも設定できます。
-W0 オプションで nil、
-W1 オプションで false、
-W2, -W オプションで true が設定されます。
-...

Kernel$$. -> Integer (27010.0)

いずれかの IO オブジェクトが最後に読んだ行の行番号です。 Object::ARGF などの IO 互換のオブジェクトも $. を更新します。

いずれかの IO オブジェクトが最後に読んだ行の行番号です。
Object::ARGF などの IO 互換のオブジェクトも $. を更新します。

IO からの読み込みが起きるタイミングが予測不能であるような複雑なプログラムでは使用すべきではありません。特に、マルチスレッドプログラムではスレッド間で競合を起こす可能性があります。
そのような場合には、 IO#lineno を使用してください。

この変数はグローバルスコープです。
Ruby起動時の初期値は 0 です。

Kernel$$0 -> String (27010.0)

現在実行中の Ruby スクリプトの名前を表す文字列です。

現在実行中の Ruby スクリプトの名前を表す文字列です。

OS と Ruby のバージョンによっては、この変数に代入すると ps(1) の出力が変化します。
この機能はプログラムの現在の状態を表示するのに便利です。

この変数はグローバルスコープです。

Kernel$$1 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$10 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

絞り込み条件を変える

Kernel$$11 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$2 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$3 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$4 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$5 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

絞り込み条件を変える

Kernel$$6 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$7 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$8 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$9 -> String | nil (27010.0)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。 該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

最後に成功したパターンマッチで n 番目の括弧にマッチした値が格納されます。
該当する括弧がなければ nil が入っています。(覚え方: \数字 のようなもの)

番号 n はいくらでも大きな正整数を利用できます。

Regexp.last_match(1),
Regexp.last_match(2), ... と同じ。

これらの変数はローカルスコープかつスレッドローカル、読み取り専用です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)...

Kernel$$; -> Regexp | String | nil (27010.0)

String#split で引数を省略した場合の区切り文字です。

String#split で引数を省略した場合の区切り文字です。

Ruby 2.7からは nil 以外に変更することは非推奨になったため、
nil 以外を代入すると警告がでるようになりました。

nilを設定すると特殊な分割を行います。
詳細は String#split を参照してください。

コマンドラインオプション -F を指定して Ruby を起動した場合、
初期値は -F で指定した値です。
それ以外の時には初期値は nil です。

$; には任意のオブジェクトを代入できます。
ただし、String#split の仕様変更を考慮すると
常に正規表現を指定すべきです。

Ruby ...

絞り込み条件を変える

Kernel$$< -> IO (27010.0)

すべての引数または標準入力で構成される仮想ファイルです。 定数 Object::ARGF の別名です。

すべての引数または標準入力で構成される仮想ファイルです。
定数 Object::ARGF の別名です。

この変数はグローバルスコープ、読み取り専用です。

Kernel$$= -> bool (27010.0)

過去との互換性のために残されていますが、もはや何の意味もありません。

...

値は常に false です。代入しても無視されます。

この変数はグローバルスコープです。

//emlist[例][ruby]{
$= = true # => warning: variable $= is no longer effective; ignored
$= # => warning: variable $= is no longer effective
# false
//}...

Kernel$$? -> Process::Status | nil (27010.0)

このスレッドで最後に終了した子プロセスのステータスです。

このスレッドで最後に終了した子プロセスのステータスです。

Process::Status オブジェクトが入っています。
子プロセスの終了時ステータスは Process::Status#exitstatus で得られます。

この変数はスレッドローカルで読み取り専用です。

@see Process.#wait
@see Process.last_status

Kernel$$DEBUG -> bool (27010.0)

この値が真のときはインタプリタがデバッグモードになります。

この値が真のときはインタプリタがデバッグモードになります。

コマンドラインオプション -d でセットされます。
スクリプトから代入することもできます。

デバッグモードでは、通常モードに比べて以下の違いがあります。

* 通常時はいずれかのスレッドが例外によって終了しても
他のスレッドは実行を続けますが、デバッグモードでは
いずれかのスレッドが例外によって終了した時に
インタプリタ全体が中断されるようになります。
Thread.abort_on_exception を
true にセットするのと同じ効果です。
* Thread.abort_on_excep...

Kernel$$FILENAME -> String (27010.0)

仮想ファイル Object::ARGF で現在読み込み中のファイル名です。 ARGF.class#filename と同じです。

仮想ファイル Object::ARGF で現在読み込み中のファイル名です。
ARGF.class#filename と同じです。

この変数はグローバルスコープです。

絞り込み条件を変える

Kernel$$KCODE -> nil (27010.0)

この特殊変数は何の影響も持たなくなりました。

...たなくなりました。

値を代入しても無視され、参照すると常に nil です。

>> $KCODE = true
(irb):1: warning: variable $KCODE is no longer effective; ignored
=> true
>> $KCODE
(irb):2: warning: variable $KCODE is no longer effective
=> nil

@see spec/rubycmd...

Kernel$$PROGRAM_NAME -> String (27010.0)

現在実行中の Ruby スクリプトの名前を表す文字列です。

現在実行中の Ruby スクリプトの名前を表す文字列です。

OS と Ruby のバージョンによっては、この変数に代入すると ps(1) の出力が変化します。
この機能はプログラムの現在の状態を表示するのに便利です。

この変数はグローバルスコープです。

Kernel$$SAFE -> Integer (27010.0)

カレントスレッドのセーフレベルを表す整数です。

カレントスレッドのセーフレベルを表す整数です。

セーフレベルについてはspec/safelevel を参照してください。

Thread.current.safe_level と同じです。
非整数を代入しようとすると TypeError が発生します。

この変数はスレッドローカルです。
Ruby起動時の初期値は 0 です。

Kernel$$VERBOSE -> bool | nil (27010.0)

冗長メッセージフラグです。Rubyインタプリタへの コマンドラインオプション -v でセットされます。

冗長メッセージフラグです。Rubyインタプリタへの
コマンドラインオプション -v でセットされます。

警告レベルは三段階あり、それぞれ以下の通りです。

: nil
警告を出力しない
: false
重要な警告のみ出力 (デフォルト)
: true
すべての警告を出力する

$VERBOSE に nil, false 以外を代入すると値は true になります。

$VERBOSE の値はコマンドラインオプション
-W でも設定できます。
-W0 オプションで nil、
-W1 オプションで false、
-W2, -W オプションで true が設定されます。
-...

Kernel$$` -> String | nil (27010.0)

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした 部分より前の文字列です。 最後のマッチが失敗していた場合には nil となります。

現在のスコープで最後に成功した正規表現のパターンマッチでマッチした
部分より前の文字列です。
最後のマッチが失敗していた場合には nil となります。

Regexp.last_match.pre_match と同じです。

この変数はローカルスコープかつスレッドローカル、読み取り専用です。
Ruby起動時の初期値は nil です。

//emlist[例][ruby]{
str = '<p><a href="http://example.com">example.com</a></p>'
if %r[<a href="(.*?)">(.*?)</a>] =~ str
p $`
end
...

絞り込み条件を変える

Kernel$$~ -> MatchData | nil (27010.0)

現在のスコープで最後に成功したマッチに関する MatchDataオブジェクトです。 Regexp.last_match の別名です。

現在のスコープで最後に成功したマッチに関する MatchDataオブジェクトです。
Regexp.last_match の別名です。

このデータから n 番目のマッチ ($n) を取り出すためには $~[n] を使います。

この値に代入すると Regexp.last_match や、 $&, $1, $2, ... などの関連する組み込み変数の値が変化します。
MatchData オブジェクトでも nil でもない値を代入しようとすると TypeError が発生します。

この変数はローカルスコープかつスレッドローカルです。
Ruby起動時の初期値は nil です。

//emlist...