16
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ググって解決しづらかったことAdvent Calendar 2021

Day 1

Rubyで長文を変数に入れるあれ

Last updated at Posted at 2021-11-30

いろんな言語扱っていると細かい書き方忘れがちですよね。

ifひとつとっても、「if (...) {...}だっけ?」、「if ... then ... endだっけ?」、「あれ?thenいらないんだっけ?」、「最後はend ifだっけ?」となって、1年ぶりに書く言語でNo資料、NoGoogleで書ける自信がありません。

なので久々に書く言語では、過去に書いたソースを流し見したりして、なんとなくの勘を取り戻したりします。

その時に**「こういうことができた気がするけど、書き方完全に忘れた」ってのがよく出てきて、rubyでよく忘れるのがヒアドキュメント**の書き方です。

konnayatsu.rb
json = <<'EOS'
{
  "language": "Ruby"
}
EOS

ヒアドキュメントって単語を覚えていればそれでググれば済む話なんですが、この単語が忘れがち。

**<<を使うことだけは覚えているので「ruby <<」**とかでググると

korejanai.rb
ary = [1]
ary << 2
p ary      # [1, 2]

配列の代入でがち。
**「ruby << 文字列」**でググっても

korejanai_reloaded.rb
str = "string"
str.concat "XXX"
p str    # => "stringXXX"

str << "YYY"
p str    # => "stringXXXYYY"

str << 65  # 文字AのASCIIコード
p str    # => "stringXXXYYYA"

文字列の連結でがち。

そういうときは、単語の連結は諦めて、いっそ想いをそのままGoogleに伝えてハートとハートをぶつけ合った方が、良い結果が得られます。

16
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?