💎

RubyのStringオブジェクトについて解説

2021/03/30に公開

irb を使いながら、Ruby の String オブジェクトについて解説していきます。

String オブジェクトとは?

文字列を扱うオブジェクトのことです。
シングル or ダブルクォーテーションで囲うと String オブジェクトになります。
class メソッドで確認してみましょう。

 $ irb
irb(main):001:0> "文字列".class
=> String

String オブジェクトの機能

よく使う String オブジェクトのメソッドを紹介します。

upcase メソッドで大文字化

irb(main):002:0> 'String'.upcase
=> "STRING"

downcase メソッドで小文字化

irb(main):007:0> 'String'.downcase
=> "string"

文字の切り出し

slice メソッドを使うと指定した文字列分を切り出せます。
下の例では 0 文字目から 2 (3 の一つ手前) まで切り出しています。

irb(main):006:0> 'String'.slice(0, 3)
=> "Str"

サイズの確認

irb(main):014:0> 'String'.size
=> 6

オブジェクトタイプの変換

interger への変換

to_i というメソッドを使用します。

irb(main):018:0> '10000'.class
=> String
irb(main):019:0> '10000'.to_i.class
=> Integer

float への変換

to_f というメソッドを使用します。

irb(main):020:0> '1.1'.class
=> String
irb(main):021:0> '1.1'.to_f.class
=> Float

String オブジェクトの操作

文字の連結

irb(main):027:0> 'Str' + 'ing'
=> "String"

文字を末尾に連結

irb(main):030:0> 'String' << '!'
=> "String!"

変数を使うと連続して連結することも出来ます。

irb(main):038:0> str = 'String'
=> "String"
irb(main):039:0> str << '!'
=> "String!"
irb(main):040:0> str << '!'
=> "String!!"

自己代入

irb(main):042:0> str = 'String'
=> "String"
irb(main):043:0> str += '!'
=> "String!"

文字列内で変数を展開

ダブルクォーテーション内で囲った文字列の中で #{変数} という式を埋め込むと
変数を文字列の中で展開することができます。

irb(main):047:0> name = 'Masuyama'
=> "Masuyama"
irb(main):048:0> "私の名前は #{name} です"
=> "私の名前は Masuyama です"

ちなみに変数の展開だけではなく、式を埋め込んで展開することもできます。

irb(main):052:0> "1 + 1 = #{1+1}"
=> "1 + 1 = 2"

Discussion