tr(pattern, replace) -> String
[permalink][rdoc][edit]-
pattern 文字列に含まれる文字を検索し、それを replace 文字列の対応する文字に置き換えます。
pattern の形式は tr(1) と同じです。つまり、 `a-c' は a から c を意味し、"^0-9" のように文字列の先頭が `^' の場合は指定文字以外が置換の対象になります。
replace に対しても `-' による範囲指定が可能です。
`-' は文字列の両端にない場合にだけ範囲指定の意味になります。 `^' も文字列の先頭にあるときにだけ否定の効果を発揮します。また、`-', `^', `\' はバックスラッシュ (`\') によりエスケープできます。
replace の範囲が pattern の範囲よりも小さい場合は、 replace の最後の文字が無限に続くものとして扱われます。
- [PARAM] pattern:
- 置き換える文字のパターン
- [PARAM] replace:
- pattern で指定した文字を置き換える文字
p "foo".tr("f", "X") # => "Xoo" p "foo".tr('a-z', 'A-Z') # => "FOO" p "FOO".tr('A-Z', 'a-z') # => "foo" # シーザー暗号の復号 p "ORYV".tr("A-Z", "D-ZA-C") # => "RUBY" # 全角英数字といくつかの記号の半角化 email = "ruby−lang@example.com" p email.tr("0-9a-zA-Z.@−", "0-9a-zA-Z.@-") # => "ruby-lang@example.com"
[SEE_ALSO] String#tr!, String#tr_s