文字列と文字列を結合して、新たな文字列を作成することはよくあります。
ここでは、「文字列同士を結合する方法が知りたい」といった人に向けて、以下の内容を解説していきます。
【基礎】文字列を結合する方法
【基礎】+メソッド
【基礎】<<メソッド
【基礎】concatメソッド
【発展】printで文字列と変数を出力する
文字列を結合する基本的な方法を網羅していますので、ぜひ参考にしてくださいね!
文字列を結合する方法
Rubyで文字列を結合する方法は、主に以下の方法があります。
- +メソッドで文字列と文字列を連結する方法
- <<メソッドで文字列の末尾に文字列を連結する方法
- concatメソッドで文字列の末尾に文字列を連結する方法
次項ではそれぞれの使い方について、詳しく見ていきましょう。
+メソッド
+メソッドを使用することで文字列同士を簡単に結合することができます。
print "Hello " + "Ruby!"
文字列と文字列を+メソッドで連結することで、1つの文字列として「Hello Ruby!」が出力されます。
また、文字列型の変数同士を結合することもできます。
str1 = "Hello " str2 = "Ruby!" # 文字列1と文字列2を結合 str = str1 + str2 print str
実行結果:
Hello Ruby!
+メソッドを使うことで、strには文字列str1とstr2が結合された文字列が代入されます。
このように簡単な連結なら+メソッドを使うと便利です。
<<メソッド
<<は主にシフト演算を行うときに使用するメソッドですが、文字列を結合するときも使用できます。
str1 = "Hello " str2 = "Ruby!" # 文字列1と文字列2を結合 str1 << str2 print str1
実行結果:
Hello Ruby!
<<メソッドの注意点として、<<メソッドで代入されるstr1の末尾に文字列が結合されます。
そのため、str1はもとの文字列である「Hello」が維持できませんので注意しましょう。
concatメソッド
concatはStringのメソッドで、文字列の末尾に引数で指定した文字列を結合します。
書き方:
文字列.concat(結合する文字列)
concatメソッドは先述した<<メソッド同様に、結合する文字列の末尾に文字列が結合されてしまうため、元の値は維持できません。
str1 = "Hello " str2 = "Ruby!" # 文字列1と文字列2を結合 str1.concat(str2) print str1
実行結果:
Hello Ruby!
printで文字列と変数を出力する
printなどで文字列と変数を結合させて出力したい場合もあります。
printで変数や式を出力させたい場合、ダブルクォーテーションで囲まれた文字列の中に「#{式}」のようにして内容を記述します。
str = "Hello" print "変数の値は、 #{str}です。 "
実行結果:
変数の値は、 Helloです。
以下のように式を記述することもできます。
str1 = "Hello " str2 = "Ruby!" print "変数の値は、 #{str1 + str2}です。 "
実行結果:
変数の値は、 Hello Ruby!です。
まとめ
ここでは、文字列を結合するための基本的な方法を解説しました。
- 文字列を結合する方法
- +メソッドの使い方
- <<メソッドの使い方
- concatメソッドの使い方
- printで文字列と変数を出力する
文字列同士を結合する方法はよく使われますので、結合方法についてはよく理解しておきましょう。
もし、文字列を結合する方法を忘れてしまったら、この記事を思い出してくださいね!