このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

Ruby 1.8.7 リファレンスマニュアル

instance method String#downcase!

downcase! -> self | nil[permalink][rdoc]

文字列中の 'A' から 'Z' までのアルファベット大文字をすべて破壊的に小文字に置き換えます。アルファベット大文字以外の文字はすべてそのまま保存されます。

このメソッドはマルチバイト文字列を認識しますが、それはあくまでも「1 文字を 1 文字として認識する」だけであって、いわゆる全角アルファベットの大文字小文字までは変換しません。

処理する文字列の文字コードが Shift JIS で、しかも $KCODE が適切に設定されていない場合、このメソッドはマルチバイト文字の一部も変換してしまう場合があります。逆に、$KCODE を適切に設定してもマルチバイト文字のアルファベットは処理できません。

[RETURN]
self を変更して返します。変更が無かった場合は nil を返します。

例:

str = "STRing?"
str.downcase!
p str   # => "string?"

# -*- encoding: shift_jis -*-
$KCODE = 'n'
str = "帰"
str.downcase!
puts str   # => 蟻

[SEE_ALSO] String#downcase, String#upcase!, String#swapcase!, String#capitalize!