技術ブログ

(技術系中心)基本自分用備忘録なので、あくまで参考程度でお願いします。

文字列のシングルクオテーションとダブルクオテーションの違い

文字列のシングルクオテーションとダブルクオテーションの違い

Rubyでは文字列を作る時にシングルクオテーションとダブルクオテーションを利用できますが。 この2つで文字列を作成した時の違いはなんでしょうか?

'hogehoge'
"hogehoge"

ダブルクオートで囲むと\nが改行文字として機能する

puts"hoge\nhoge"
#=>hoge
#hoge

#シングルクオートで囲むと\nはただの文字列になる
puts'hoge\nhoge'
#=>hoge\nhoge

ダブルクオートを使うと式展開することができる

name='KeisukeHonda'
puts"こんにちは,#{name}!"#=>こんにちは,KeisukeHonda!

一方、シングルクオートを使うと式展開されません。

name='KeisukeHonda'
puts'こんにちは,#{name}!'#=>こんにちは,#{name}!

シングルクオテーションとダブルクオテーションの使い分け

基本的にどちらでもOK ただ、式展開したり、改行文字を利用するときはダブルクオテーションを利用する。