| 序號 |
方法及描述 |
| 1 |
abort
終止程式。如果引發異常(即$!不為nil),則顯示其錯誤訊息。 |
| 2 |
Array( obj)
使用to_ary或to_a將obj轉換為陣列後返回obj。 |
| 3 |
at_exit {...}
註冊一個塊,以便在程式退出時執行。類似於END語句,但END語句僅註冊一次塊。 |
| 4 |
autoload( classname, file)
註冊一個類classname,以便在第一次使用時從檔案載入。classname可以是字串或符號。 |
| 5 |
binding
返回當前變數和方法繫結。返回的Binding物件可以作為第二個引數傳遞給eval方法。 |
| 6 |
block_given?
如果方法是用塊呼叫的,則返回true。 |
| 7 |
callcc {| c|...}
將Continuation物件c傳遞給塊並執行塊。callcc可用於全域性退出或迴圈構造。 |
| 8 |
caller([ n])
以file:line形式的字串陣列的形式返回當前執行堆疊。如果指定了n,則從第n級開始返回堆疊條目。 |
| 9 |
catch( tag) {...}
捕獲在執行其塊期間由throw呼叫的非本地退出。 |
| 10 |
chomp([ rs = $/])
返回變數$_的值,並刪除結尾的換行符,並將結果賦值回$_。換行符字串的值可以使用rs指定。 |
| 11 |
chomp!([ rs = $/])
從$_中刪除換行符,就地修改字串。 |
| 12 |
chop
返回$_的值,並刪除其最後一個字元(一個位元組),並將結果賦值回$_。 |
| 13 |
chop!
從$_中刪除最後一個字元,就地修改字串。 |
| 14 |
eval( str[, scope[, file, line]])
將str作為Ruby程式碼執行。可以使用scope指定執行繫結的範圍。可以使用file和line指定要編譯的程式碼的檔名和行號。 |
| 15 |
exec( cmd[, arg...])
透過執行命令cmd替換當前程序。如果指定了多個引數,則命令將不帶shell擴充套件執行。 |
| 16 |
exit([ result = 0])
退出程式,result作為返回的狀態程式碼。 |
| 17 |
exit!([ result = 0])
終止程式,繞過退出處理(例如ensure等)。 |
| 18 |
fail(...)
參見raise(...) |
| 19 |
Float( obj)
將obj轉換為浮點數後返回obj。數值物件直接轉換;nil轉換為0.0;字串在考慮0x、0b基數字首的情況下進行轉換。其餘使用obj.to_f轉換。 |
| 20 |
fork
fork {...}
建立子程序。在子程序中返回nil,在父程序中返回子程序的ID(整數)。如果指定了塊,則在子程序中執行。 |
| 21 |
format( fmt[, arg...])
參見sprintf。 |
| 22 |
gets([ rs = $/])
讀取命令列中指定的檔名或標準輸入中的一行。可以使用rs顯式指定記錄分隔符字串。 |
| 23 |
global_variables
返回全域性變數名稱的陣列。 |
| 24 |
gsub( x, y)
gsub( x) {...}
將$_中所有與x匹配的字串替換為y。如果指定了塊,則匹配的字串將替換為塊的結果。修改後的結果分配給$_。 |
| 25 |
gsub!( x, y)
gsub!( x) {...}
執行與gsub相同的替換,但字串就地更改。 |
| 26 |
Integer( obj)
將obj轉換為整數後返回obj。數值物件直接轉換;nil轉換為0;字串在考慮0x、0b基數字首的情況下進行轉換。其餘使用obj.to_i轉換。 |
| 27 |
lambda {| x|...}
proc {| x|...}
lambda
proc
將塊轉換為Proc物件。如果沒有指定塊,則轉換與呼叫方法關聯的塊。 |
| 28 |
load( file[, private = false])
從file載入Ruby程式。與require不同,它不載入擴充套件庫。如果private為true,則程式載入到匿名模組中,從而保護呼叫程式的名稱空間。 |
| 29 |
local_variables
返回區域性變數名稱的陣列。 |
| 30 |
loop {...}
重複一段程式碼。 |
| 31 |
open( path[, mode = "r"])
open( path[, mode = "r"]) {| f|...}
開啟一個file。如果指定了塊,則使用作為引數傳遞的開啟流執行塊。塊退出時,檔案會自動關閉。如果path以管道|開頭,則以下字串作為命令執行,並返回與該程序關聯的流。 |
| 32 |
p( obj)
使用其inspect方法顯示obj(通常用於除錯)。 |
| 33 |
print([ arg...])
將arg列印到$defout。如果沒有指定引數,則列印$_的值。 |
| 34 |
printf( fmt[, arg...])
使用sprintf根據fmt格式化arg,並將結果列印到$defout。有關格式規範的詳細資訊,請參閱sprintf。 |
| 35 |
proc {| x|...}
proc
參見lamda。 |
| 36 |
putc( c)
將一個字元列印到預設輸出($defout)。 |
| 37 |
puts([ str])
將字串列印到預設輸出($defout)。如果字串不以換行符結尾,則將換行符追加到字串。 |
| 38 |
raise(...)
fail(...)
引發異常。如果沒有指定異常類,則假定為RuntimeError。在rescue子句中不帶引數呼叫raise會重新引發異常。在rescue子句之外這樣做會引發無訊息的RuntimeError。fail是raise的過時名稱。 |
| 39 |
rand([ max = 0])
生成一個大於或等於0且小於max的偽隨機數。如果未指定max或將其設定為0,則返回一個浮點數形式的隨機數,該數大於或等於0且小於1。srand可用於初始化偽隨機流。 |
| 40 |
readline([ rs = $/])
等效於gets,除了在讀取EOF時引發EOFError異常。 |
| 41 |
readlines([ rs = $/])
返回一個字串陣列,其中包含作為命令列引數指定的檔名或標準輸入的內容。 |
| 42 |
require( lib)
在第一次呼叫時載入庫(包括擴充套件庫)lib。require不會載入同一個庫多次。如果在lib中未指定副檔名,則require嘗試向其新增.rb、.so等。 |
| 43 |
scan( re)
scan( re) {|x|...}
等效於$_.scan。 |
| 44 |
select( reads[, writes = nil[, excepts = nil[, timeout = nil]]])
檢查三種類型的IO物件(輸入、輸出和異常)的狀態更改,這些物件作為IO物件的陣列傳遞。對於不需要檢查的引數,傳遞nil。返回一個包含三個元素的陣列,其中包含狀態發生變化的IO物件的陣列。在超時時返回nil。 |
| 45 |
set_trace_func( proc)
設定跟蹤處理程式。proc可以是字串或proc物件。set_trace_func由偵錯程式和分析器使用。 |
| 46 |
sleep([ sec])
暫停程式執行sec秒。如果未指定sec,則程式將無限期暫停。 |
| 47 |
split([ sep[, max]])
等效於$_.split。 |
| 48 |
sprintf( fmt[, arg...])
format( fmt[, arg...])
返回一個字串,其中arg根據fmt進行格式化。格式規範基本上與C程式語言中sprintf的格式規範相同。fmt中的轉換說明符(%後跟轉換欄位說明符)將替換為相應引數的格式化字串。下一節將列出轉換欄位列表。 |
| 49 |
srand([ seed])
初始化一個隨機數陣列。如果未指定seed,則使用時間和其他系統資訊初始化種子。 |
| 50 |
String( obj)
使用obj.to_s將obj轉換為字串後返回obj。 |
| 51 |
syscall( sys[, arg...])
呼叫由數字sys指定的作業系統呼叫函式。sys的數字和含義與系統相關。 |
| 52 |
system( cmd[, arg...])
將cmd作為對命令列的呼叫執行。如果指定了多個引數,則命令將不帶shell擴充套件直接執行。如果返回狀態為0(成功),則返回true。 |
| 53 |
sub( x, y)
sub( x) {...}
將$_中第一個與x匹配的字串替換為y。如果指定了塊,則匹配的字串將替換為塊的結果。修改後的結果分配給$_。 |
| 54 |
sub!( x, y)
sub!( x) {...}
執行與sub相同的替換,但字串就地更改。 |
| 55 |
test( test, f1[, f2])
執行由字元test指定的各種檔案測試。為了提高可讀性,您應該使用File類方法(例如File::readable?)而不是此函式。下一節將列出引數列表。 |
| 56 |
throw( tag[, value = nil])
跳轉到使用符號或字串tag等待的catch函式。value是要由catch使用的返回值。 |
| 57 |
trace_var( var, cmd)
trace_var( var) {...}
設定全域性變數的跟蹤。變數名稱指定為符號。cmd可以是字串或Proc物件。 |
| 58 |
trap( sig, cmd)
trap( sig) {...}
設定訊號處理程式。sig 可以是字串(例如 SIGUSR1)或整數。訊號名稱中的 SIG 可以省略。EXIT 訊號或訊號編號 0 的訊號處理程式在程序終止之前被呼叫。 |
| 59 |
untrace_var( var[, cmd])
移除全域性變數的跟蹤。如果指定了cmd,則僅移除該命令。 |