Rubyリファレンス: Home

insert (String)

Edit   History

標準クラス・モジュール > String > insert

str.insert(index, other_str)

insertメソッドは、文字列の中でindexの位置に別の文字列other_strを挿入します。レシーバ自身を変更するメソッドです。戻り値はレシーバ自身です。

indexに負の値を指定すると、文字列の末尾から位置を数えます(-1が末尾から1番目、-2が末尾から2番目、...)。範囲外の位置を指定すると例外IndexErrorが発生します。

s = "hello, world"
s.insert(7, "ruby ")
puts s
s.insert(-6, "programming ")
puts s
hello, ruby world
hello, ruby programming world

Ruby 1.9 indexの位置は、Ruby 1.8ではバイト単位での位置、Ruby 1.9では文字単位での位置になります。

# encoding: utf-8
s = "あいうえお"
s.insert(3, "、")
puts s
あいう、えお  (Ruby 1.8では あ、いうえお)

関連項目