縦棒は、ドキュメントで以下のように表現されている場所があります 拡張子:txtvbswsfjsphpjavahtmlutf8sjis | と | の間にはさまれた変数(ブロックの引数) http://doc.okkez.net/static/192/doc/spec=2fcall.html#yield で、そうなると「ブロック」が重要になりますが、同じページに以下の記述があります 拡張子:txtvbswsfjsphpjavahtmlutf8sjis 例: [1,2,3].each do |i| print i*2, "\n" end [1,2,3].each {|i| print i*2, "\n" } 文法: method(arg1, arg2, ...) do [`|' 式 ... `|'] 式 ... end method(arg1, arg2, ...) `{' [`|' 式 ... `|'] 式 ... `}' method(arg1, arg2, ..., `&' proc_object) http://doc.okkez.net/static/192/doc/spec=2fcall.html#block ▼関連する一般リンク http://www.oreilly.co.jp/community/blog/2009/05/changes-on-ruby-1-9.html ドキュメントの if の説明の一部としてあります 拡張子:txtvbswsfjsphpjavahtmlutf8sjis Ruby では false または nil だけが偽で、それ以外は 0 や空文字列も含め全て真です。 http://doc.okkez.net/static/187/doc/spec=2fcontrol.html#if 改行についてですが・・・ 拡張子:txtvbswsfjsphpjavahtmlutf8sjis 改行は行が明らかに次の行に継続する時だけ、空白文字として、それ以外では文の区切りとして解釈されます。 http://doc.okkez.net/static/187/doc/spec=2flexical.html 例えば演算式で、演算子で終わる行は継続するのですが、値で終わる演算式は継続しませんでした 拡張子:txtvbswsfjsphpjavahtmlutf8sjis 式と式の間はセミコロン(;)または改行で区切ります。 ただし、バックスラッシュに続く改行は文の区切りにならず、次の行へ継続します。 http://doc.okkez.net/static/187/doc/spec=2fprogram.html ▲上記ページの例文は例になっておらず、以下を参照です 拡張子:txtvbswsfjsphpjavahtmlutf8sjis puts(3 \ + 4) #=> 7 http://doc.okkez.net/static/187/doc/symref.html#backslash gsub は、正規表現一括置換用メソッドです。以下参照 instance method String#gsub Ruby : メソッド定義で URLエンコード
| と | の間にはさまれた変数(ブロックの引数)
例: [1,2,3].each do |i| print i*2, "\n" end [1,2,3].each {|i| print i*2, "\n" } 文法: method(arg1, arg2, ...) do [`|' 式 ... `|'] 式 ... end method(arg1, arg2, ...) `{' [`|' 式 ... `|'] 式 ... `}' method(arg1, arg2, ..., `&' proc_object)
Ruby では false または nil だけが偽で、それ以外は 0 や空文字列も含め全て真です。
改行は行が明らかに次の行に継続する時だけ、空白文字として、それ以外では文の区切りとして解釈されます。
式と式の間はセミコロン(;)または改行で区切ります。 ただし、バックスラッシュに続く改行は文の区切りにならず、次の行へ継続します。
puts(3 \ + 4) #=> 7