ヒアドキュメント
Perlでは、ヒアドキュメントを実現する方法が何通りか存在する。ヒアドキュメントを引用符で囲むと、一重引用符ならヒアドキュメント内の変数展開が行われないようになり、二重引用符では変数が展開される。またバッククオートならヒアドキュメントの中身がシェルで実行されるというように、普通の文字列を囲む引用符と同様にヒアドキュメントの機能が変化する(何も囲まなければ変数展開が行われる)。 ヒアドキュメントを終わらせる識別子は、行頭に書かなければその役割を果たさない。
なお、ヒアドキュメントは開始の識別子を書いた直後ではなく、その次の行頭から始まるので、ヒアドキュメントを含む命令の続きは識別子の後ろへ書くこととなる。
ダブルクオートで識別子を囲むと、以下のようになる。
出力は以下のようになる。
上の例をシングルクォートにすると、
出力は以下のようになる。
バッククオートで囲んだ例を以下に示す(環境依存)。
1行で複数のヒアドキュメントを始めることもできる。
タグ自体に空白文字を含めれば、ヒアドキュメントの終了タグをインデントすることもできる。