スライドショー

【3分でわかる】Ruby 文字列4つの初期化の方法まとめ

どうも!
インストラクターの馬場です!

Rubyの文字列の初期化って、いろいろな方法があるのはご存知ですか?

しかもそれぞれの方法に微妙な違いが現れるので、しっかり使い分けを理解しておかないと、思わぬバグの原因になったりもします。

そこで今回は、Rubyの文字列の初期化について、解説していきます!
それでは行ってみましょう!

文字列の初期化

文字列を使うためには初期化を行う必要があります。

文字列の初期化は主に五つの方法があります。

それぞれの方法の違いについて見ていきましょう!

String.new

インスタンスを作成するためのnewメソッドを使用して初期化する方法です。

string = String.new("ruby")
p string #=> "ruby"

あまり使用されない方法で、コーディングガイドなどでも、理由がない限り、使用しないようにとされていることが多いです。

""(ダブルクォート)

一番よく使用される初期化方法です。

string = "ruby"
p string #=> "ruby"

このように文字列にしたい文字を「"」で囲うことで、文字列として初期化することができます。
また「"」この文字は「ダブルクォート」「ダブルクォーテーション」と呼ばれるので覚えておきましょう。

''(シングルクォート)

上の初期化方法と似ており「'」で文字を囲うことで、文字列として初期化する方法です。

string = 'ruby'
p string #=> 'ruby'

ダブルクォートと同じく「'」この記号は「シングルクォート」「シングルクォーテーション」と呼ばれるので覚えておきましょう。
上のダブルクォートで定義する方法との違いは、式展開ができないということです。

式展開とは文字列の中で式を展開する方法の事で、#{}で式をくくることで展開を行うことができます。

%Q、%q

他の言語では見慣れない記法ですがRubyではこれでも初期化を行うことができます。
文字列内にシングルクォートやダブルクォートを使用したい時はこの初期化の方法を使用します。

string = %Q("ruby""python")
p string #=> "ruby""python"
string = %q('ruby''python')
p string #=> 'ruby''python'

このようにダブルクォートやシングルクォートを文字列に使用することができます。
%qと%Qの違いはシングルクォートで囲った文字列に相当するか、ダブルクォートで囲った文字列に相当するかです。

%Qではダブルクォートで囲った文字列に相当するので式展開を行うことができます。
しかし%qではシングルクォートで囲った文字列に相当するので、式展開を行うことはできません。

まとめ

今回は文字列の初期化について解説していきました。

文字列の初期化はいろいろな種類がありますが、基本は「"」と「'」の二種類で初期化されることがほとんどです。

その二種類は覚えつつ、しっかり使いわけを行えるように他の方法も覚えておくようにしましょう。

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

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

LINEで送る
Pocket

ITエンジニアへ転職したい方におすすめ

自分を評価してくれる企業に転職して年収を上げたい! 自分のスキルにあった独自案件を知りたい!
エンジニアは今もっとも注目されている職業の1つ。エンジニアになって年収を増やしたい方や、あなたのスキルに見合った企業へ転職したいエンジニアの方も多いですよね。

しかし、大手の転職媒体は扱う求人数が多くても、誰もが登録しているので競争率もかなり高くなっています。そのため、あなたの条件に見合った企業を見つけても転職するためには、相応の努力とスキルが必要となります。

こういった媒体では、未経験からエンジニアを目指す方やエンジニア歴2〜3年で転職を考えている方にとって、最適な転職環境とはいえません。

そこでオススメしたいのが、未経験者や若手エンジニア向けの独自案件を多く掲載している「侍ワークス」です。

侍ワークスは、独自案件を多く掲載しているだけでなく、

・応募から就業まで一貫したサポート

・就業後もアフターフォロー

といった経験の浅い方や初めてエンジニアを目指す方にも安心のフォロー体制が整っています。もちろん登録は完全無料!しかも案件を見るだけなら登録も不要です。

まずは、お気軽にどんな求人があるか見てみてください。あなたにピッタリの企業がきっと見つかりますよ! 侍ワークスの求人情報を見る

書いた人

ババシュンスケ

ババシュンスケ

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

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

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