スライドショー

【3分でわかる】Rubyでヒアドキュメント

今回はrubyのヒアドキュメントについて解説していきたいと思います。しかしヒアドキュメントと聞いても、

そもそもヒアドキュメントって何?
rubyでヒアドキュメントってどうやって使うの?
もっと便利なヒアドキュメントの使い方ってないの?

とさまざまな疑問が浮かんできます。そこで今回はヒアドキュメントについて以下の内容で解説していきます。

ヒアドキュメントとは
rubyでヒアドキュメント
ヒアドキュメントの便利な使い方

本当に3分で理解出来ちゃうので、サクッといきましょう!

ヒアドキュメントとは

ヒアドキュメントとは一言で言うと、「文字列をプログラミングに埋め込むためのもの」と言えます。

普通の文字列の表現と違い、改行も埋め込むことができるので、より柔軟に文字列を扱うことができます。

特にRubyの場合、改行は普通だと文の終了だと見なされるますがヒアドキュメントによって、改行した複数行の文字列をプログラムに使用することができます。

rubyでヒアドキュメント

それではrubyでヒアドキュメントを使っていきましょう!

ヒアドキュメントは「<<」識別子を使用して表します。

識別子の後に、ヒアドキュメントの終わりと始まりを表す文字列を打ちます。

p <<-EOF
ruby
python
java
EOF

# =>"ruby\npython\njava\n"

ヒアドキュメントの文字列は慣習的にEOFやEOSが使われますが、終わりと始まりで一致していれば何を使用しても大丈夫です!

便利な使い方

それではヒアドキュメントの便利な使い方を見ていきましょう!
これを知ることでより柔軟にヒアドキュメントを使うことができます!

変数の展開

まずは変数の展開について見ていきます。
識別のための文字を""(ダブルコーテーション)で囲うことで、文字列と同じように展開を行うことができます。

language = "ruby"
p <<"EOF"
#{language}
python
java
EOF

# =>"ruby\npython\njava\n"

メソッドチェーン

ヒアドキュメント内の文字列に対してメソッドを一気に実行することができます。

p <<-EOF.upcase
ruby
python
java
EOF

# =>"RUBY\nPYTHON\nJAVA\n"

複数のヒアドキュメント

一括でヒアドキュメントを使用することもできます。

p <

インデントを考慮

rubyのヒアドキュメントはインデントが考慮されず、インデントを入れて書くと、空白が入ってしまいます。

p <"  ruby\n  python\n  java\n"

それを防ぐために「~」を使用してヒアドキュメントを書きます。

p <<~EOF1
  ruby
  python
  java
EOF1

#=> "ruby\npython\njava\n"

まとめ

今回はrubyでヒアドキュメントの書き方を解説していきました。
ヒアドキュメントは適切に使うことで、文字列をより柔軟にプログラム内に使用することができます!

基本的な使い方だけではなく、発展的な使い方も覚えておくと良いでしょう!
ぜひこの記事を参考に使用してみてください!

Rubyの文字列をしっかり理解したい方に

この記事は文字列を体系的に解説した3ステップで簡単! Rubyの文字列を 完全理解の一部となります。
文字列をさらに理解したい方はこちらを読んでどんどん理解を深めていくようにしましょう。

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

ババシュンスケ

ババシュンスケ

こんにちは!
今年大学を飛び出し、フリーランスエンジニアとして働いています、ババです!

エンジニアはしんどい仕事と思われていますが、実はそんなにしんどくなくて、お金ももらえて、社会のためになる素晴らしい仕事というのを伝えるために、侍で業務委託として働いています!!

フリーランスの日常やら書いているブログやってます=>http://www.babashun.net/

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説