まくまくRubyノート
文字列内のある文字を指定した文字に置換する (tr)
2002-09-01

下記の例では、文字列中で見つかった a という文字を、すべて x に置換した文字列を作成しています。

'abcabc'.tr('a', 'x')  # => "xbcxbc"

String#tr メソッドでは、置換する文字を複数同時に指定することもできます。 下記のようにすると、ax に、by に置換するという意味になります。

'abcabc'.tr('ab', 'xy')  # => "xycxyc"

tr メソッドは、置換後の文字列を戻り値として返します。 文字列変数の内容を書き換える場合は、tr の代わりに tr! を使用します。

s = 'abcabc'
s.tr!('a', 'x')  # 自分自身を書き換え
puts s           # 'xbcxbc'
2002-09-01