ヒアドキュメントとは


ヒアドキュメントとは

複数行にわたる長い文字列を作成する場合などに利用する行指向文字列リテラルのこと。

いつ使うのか

  • 複数行に渡る長い文字列をきれいに書きたい場合

  • シェルスクリプトに埋め込みたいとき

使い方

<<識別子
1行目
2行目
3行目
識別子
  • 識別子は慣習として全て大文字を使う

  • デフォルトでは式展開は有効

  • 式展開を無効にするには識別子をシングルクオートで囲む

  • 識別子をダブルクオートで囲むと式展開は有効(デフォルトと同じ)

  • バックスラッシュつきの文字列の扱いも上記シングルクオート、ダブルクオートと同じ仕様

 例1. 通常の使い方

a =  <<TEXT
ヒアドキュメントのサンプルです。
複数行に渡る文字列を作成するときに使うとよいです。
TEXT

例2. インデントさせたいとき

def sample_method
  <<-TEXT
ヒアドキュメントのサンプルです。
<<-を用いて最後の識別子をインデントさせます。
  TEXT
end

例3. 先頭の空白部分を無視させたいとき
※行頭に半角スペースをいれたいときは「\」を入れる

def sample_method
  <<=TEXT
    ヒアドキュメントのサンプルです。
    <<~を用いると先頭のインデントが無視される。
TEXT
end

他にもいろいろ使い方があるので調べてみます。

いいなと思ったら応援しよう!