Rubyメモ

置換

最終更新:

匿名ユーザー

- view
管理者のみ編集可

文字列の置換


sub,sub!,gsub,gsub!メソッドを使う

string#sub(置換前パターン,置換後文字列)


subは最初のパターンだけを置換。gsubは全てのパターンを置換する。

str1 = "ABC123ABC123"
str2 = str1.sub(/[1-9]+/,"-")
puts str1
puts str2

ABC123ABC123
ABC-ABC123

str1 = "ABC123ABC123"
str2 = str1.gsub(/[1-9]+/,"-")
puts str1
puts str2

ABC123ABC123
ABC-ABC-

!をつけると、元のインスタンスの内容を変更する。これは他の!ありとなしが用意されているメソッドでも同様。

str1 = "ABC123ABC123"
str2 = str1.sub!(/[1-9]+/,"-")
puts str1
puts str2

ABC-ABC123
ABC-ABC123



もちろん検索パターンは正規表現でない普通の文字列でもいい。
str1 = "ABC123ABC123"
str2 = str1.sub("ABC","-")
puts str1
puts str2

ABC123ABC123
-123ABC123
ウィキ募集バナー