Rubyがミニツク

あなたのRubyの技術に関するより詳しい知識と理解を増やします。

Ruby入門コース

このコースについて

Rubyのeラーニング研修システムはRailsを使ってWebアプリケーション開発ができる技術者の育成を目指します。 そのため、Railsを扱うことができるだけのRubyの知識を得ることがRuby入門コースの目標となっています。

コンテンツ一覧

ヒント レッスンの名前をクリックすると、その内容を表示します。

次のコンテンツ ホームへ戻る

ヒアドキュメント

ヒアドキュメントとは、開始と終了のラベルとして使うキーワードを決め、開始から終了までの範囲を文字列オブジェクトして扱う機能のことです。ヒアドキュメントで作成した文字列オブジェクトは、変数に代入したり、メソッドに渡すなどのさまざまな使い方があります。

# 変数に代入する
foo = <<EOS
foo
bar
baz
EOS
p foo

# メソッドに渡す
print <<EOS
foo
bar
baz
EOS

文字列オブジェクトは「’’」か「""」で囲むかによって、式展開やバックスラッシュ記法を使えるかの違いがあります。ヒアドキュメントが作る文字列オブジェクトも同じように振る舞いの違いを指定することができます。
ヒアドキュメントを開始するラベルを「’’」や「""」で囲むと、ヒアドキュメントの中に書いた式展開やバックスラッシュ記法の文字列への変換をおこなうか、おこなわないかの違いが表れます。

foo = 1 + 2
print <<'EOS'
変換をおこなわない\n
#{foo}
EOS

print <<"EOS"
変換をおこなう\n
#{foo}
EOS

ヒアドキュメントを開始するラベルをレシーバとしてメソッド呼出しをすることができます。

str = <<EOS.upcase
Ruby
is
object-oriented
programming
language.
EOS
print str


次のコンテンツ ホームへ戻る