種類
- 文書 (65)
- インスタンスメソッド (24)
- ライブラリ (3)
- クラス (1)
ライブラリ
- ビルトイン (25)
クラス
- Integer (24)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) -
NEWS for Ruby 3
. 0 . 0 (5) - Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (12)
- Rubyの起動 (12)
- Symbol (1)
- xmlrpc (3)
- クラス/メソッドの定義 (12)
- 演算子式 (12)
検索結果
先頭5件
-
Integer
# times -> Enumerator (18126.0) -
self 回だけ繰り返します。 self が正の整数でない場合は何もしません。
...ら self - 1 までの数値が渡されます。
//emlist[][ruby]{
3.times { puts "Hello, World!" } # Hello, World! と3行続いて表示される。
0.times { puts "Hello, World!" } # 何も表示されない。
5.times {|n| print n } # 01234 と表示される。
//}
@see Integer#... -
Integer
# times {|n| . . . } -> self (18126.0) -
self 回だけ繰り返します。 self が正の整数でない場合は何もしません。
...ら self - 1 までの数値が渡されます。
//emlist[][ruby]{
3.times { puts "Hello, World!" } # Hello, World! と3行続いて表示される。
0.times { puts "Hello, World!" } # 何も表示されない。
5.times {|n| print n } # 01234 と表示される。
//}
@see Integer#... -
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (54.0)
-
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or plus minus ast slash hat sq period comma langl rangl eq tilde dollar at under lbrarbra lbra2rbra2 lbra3rbra3 dq colon ac backslash semicolon
...backslash semicolon
===[a:ex] !
: !true
not 演算子。d:spec/operator#notを参照。
: 3 != 5
「等しくない」比較演算子。d:spec/operator#notを参照。
: def xxx!
「!」はメソッド名の一部です。慣用的に、
同名の(! の無い)メソッドに比べて......より破壊的な作用をもつメソッド(例: tr と tr!)で使われます。
: /xxx/ !~ yyy
正規表現のメソッド =~ の否定。マッチが失敗したらtrueを返します。
===[a:q] ?
: ?a
d:spec/literal#string。長さ 1 の文字列。
: def xx?
この場合の「?......なら a に xxx を代入する、という意味になります。
//emlist{
a ||= :some
p a #=> some
a ||= :sec
p a #=> some
//}
: 5.times{|n| p n}
ブロックパラメータであることを示す区切り文字。
: /xx(xx|xx)/
正規表現の選択
===[a:plus] +
: 2 + 3... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (42.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への変更点(まとめ)/サポートプラットフォームの追加>))
...中だけになりました。
: rescue 節の例外クラスと発生した例外オブジェクトの比較 [ruby] [change]
発生した例外 $! と rescue 節の例外クラスとは ((<Module#===|Module/===>))
を使って比較するようになりました。
以前は kind_of? に......int|Numeric/to_int>)) [new]
追加。
=== Hash
: ((<Hash#merge|Hash/merge>)) [new]
: ((<Hash#merge!|Hash/merge!>)) [new]
追加。Hash#merge は、hash.dup.update と同じ。
Hash#merge! は、Hash#update の別名 ((<ruby-talk:59777>)), ((<ruby-dev:19463>))
: ((<Hash#default_proc|Hash/d......ThreadGroup に Thread を追加/削除できなくなりました。
=== Time
: ((<Process/Process.times>)) [change]
((<Time/Time.times>)) から移動しました。
(Time.times も残っていますが、warningが出ます)
: ((<Time#to_a|Time/to_a>)) [change]
: ((<Time#z... -
演算子式 (42.0)
-
演算子式 * assign * selfassign * multiassign * range * range_cond * and * or * not * cond
...[]
+(単項) ! ~
**
-(単項)
* / %
+ -
<< >>
&
| ^
> >= < <=
<=> == === != =~ !~
&&......の記法を利用します。
//emlist{
| ^ & <=> == === =~ > >= < <= << >>
+ - * / % ** ~ +@ -@ [] []= ` ! != !~
//}
これらの演算子式の定義方法についてはd:spec/def#operatorを参照してください。
:再定義できない演算子(......よくある使いかた
5.times{|n|
if (n==2)..(n==3)
p n
end
}
#=> 2
# 3
5.times{|n|
if (n==2)...(n==3)
p n
end
}
#=> 2
# 3
# 「..」と「...」の違いを示すためだけの例
5.times{|n|
if (n==2)..(n==2)
p n
end
}
#=> 2
5.times{|n|
if (n==2)...(n==2)... -
NEWS for Ruby 3
. 0 . 0 (30.0) -
NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...ad of subclass instances when called on subclass instances: 6087
* Array#drop
* Array#drop_while
* Array#flatten
* Array#slice!
* Array#slice / Array#[]
* Array#take
* Array#take_while
* Array#uniq
* Array#*
* Can be sliced with Enumerator::A......g major collections. At the moment, compaction adds significant overhead to major collections, so please test first! 17176
* Hash
* Hash#transform_keys and Hash#transform_keys! now accept a hash that maps keys to new keys. 16274
* Hash#except has been added, which returns a hash excludi......partitioning cold paths.
* Instance variables
* Eliminate some redundant checks.
* Skip checking a class and a object multiple times in a method when possible.
* Optimize accesses in some core classes like Hash and their subclasses.
* Method inlining support for some... -
クラス/メソッドの定義 (30.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
...の言語における「関数」のように使えます。
//emlist[例][ruby]{
def hello # 引数のないメソッド。
puts "Hello, world!"
end
def foo(a, b) # 引数のあるメソッド。括弧を省いてdef foo a, bとも
a + 3 * b
end
//}
メソッド名としては通常の......, y = $gvar) # 確かに定義時には$gvar == 3だが
10 * x + y
end
$gvar = 7
# 呼び出し時の$gvarの値が使われる
p bar(5) #=> 57 (!= 53)
//}
仮引数の直前に * がある場合には残りの実引数
(後述の post 引数を除く)
はみな配列とし てこの引数に......数の値はnilです。
//emlist[例][ruby]{
def foo(cnt, &block_arg)
cnt.times { block_arg.call } # ブロックに収まったProcオブジェクトはcallで実行
end
foo(3) { print "Ruby! " } #=> Ruby! Ruby! Ruby!
//}
メソッド定義において、仮引数はその種類毎に以下の... -
Rubyの起動 (24.0)
-
Rubyの起動 * cmd_option * shebang
...イ
ルです。これを省略したり`-' を指定した場合には標準入力を Ruby ス
クリプトとみなします。
programfile が `#!' で始まるファイルである場合、特殊な解釈
が行われます。詳細は後述のshebang を参照
してください
argument に......に改行を
挟んで解釈します。
//emlist{
以下は等価です。
ruby -e "5.times do |i|" -e "puts i" -e "end"
ruby -e "5.times do |i|
puts i
end"
ruby -e "5.times do |i|; puts i; end"
//}
: -Fregexp
入力フィールドセパレータ($;)に regexp を......略出来ません
(38066 参照)。
例:
//emlist{
% echo matz > /tmp/junk
% cat /tmp/junk
matz
% ruby -p -i.bak -e '$_.upcase!' /tmp/junk
% cat /tmp/junk
MATZ
% cat /tmp/junk.bak
matz
//}
: -I directory
ファイルをロードするパスを指定(追加)... -
Symbol (18.0)
-
シンボルを表すクラス。シンボルは任意の文字列と一対一に対応するオブジェクトです。
...得られます。
:symbol
:'symbol'
%s!symbol! # %記法
生成されたシンボルの一覧は Symbol.all_symbols で得られます。
一番目のリテラルでシンボルを表す場合、`:' の後に
は識別子、メソッド名(`!',`?',`=' などの接尾辞を含む)、変数......グラムが動いている間
はずっと保持しつづけられます。そのため、以下のようなコード
rng = Random.new
100000.times { rng.bytes(1000).intern }
はテーブルのサイズを増大させ、メモリを圧迫します。
例えば web アプリケーションの... -
xmlrpc (18.0)
-
XML-RPC を扱うためのライブラリです。
...(XMLStreamParser, XMLTreeParser)
* REXML (REXMLStreamParser)
* xml-scan (XMLScanStreamParser)
* Fastest parser is Expat's XMLStreamParser!
* General
* possible to choose between XMLParser module (Expat wrapper) and REXML/NQXML (pure Ruby) parsers
* Marshalling Ruby objects t......arser and scales well for large documents. For example for a 0.5 MB XML
document with many tags, XMLStreamParser is ~350 (!) times faster than
NQXMLTreeParser and still ~18 times as fast as XMLTreeParser.
You can change the XML-writer by calling method <i>set_writer</i>.
=== 参考
* http://www...