Ruby:
文字列を小文字に変換
How to: (方法)
Rubyで文字列を小文字に変換するのは簡単です。downcase
メソッドを使用します:
original_string = "Kon'nichiwa, Ruby!"
lowercase_string = original_string.downcase
puts lowercase_string
# => "kon'nichiwa, ruby!"
downcase!
メソッドもあります。これは元の文字列を直接変更します:
greeting = "Hello, World!"
greeting.downcase!
puts greeting
# => "hello, world!"
Deep Dive (詳細情報)
Rubyでは、downcase
メソッドは長い歴史を持っており、文字列を小文字に変換する簡単で効率的な方法として定着しています。しかし、downcase
はロケールに依存しないため、例えばトルコ語のように特殊な大文字小文字のルールがある言語は正しく変換されないことがあります。このような場合、Unicode対応のdowncase
の使用が検討されるべきです。
Ruby 2.4からは、String#downcase
メソッドはUnicodeのケースマッピングを使っており、多くの言語の文字を適切に小文字に変換できるようになりました。しかし、パフォーマンスや互換性の観点から代替手段も考えられるべきです。たとえば、正規表現とgsub
メソッドを組み合わせることでカスタマイズされた変換を行うことも可能です。
# Unicodeを考慮した小文字化
original_string = "Straße" # ドイツ語で "street"
lowercase_string = original_string.downcase
puts lowercase_string
# => "straße"
See Also (参照情報)
- Rubyのドキュメントで
downcase
メソッドの詳細: Ruby API - Unicodeと文字列操作に関する情報: Unicode.org
- Rubyの他の文字列操作メソッド: Ruby API String Methods