【Ruby3.x】String::casecmp?()メソッドの使い方
casecmp?メソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
casecmp?メソッドは、文字列の大文字と小文字を区別せずに比較し、両者が等しい場合に真を、そうでない場合に偽を返すメソッドです。このメソッドはRubyの組み込みクラスであるStringクラスに属しており、Stringオブジェクトに対して呼び出すことができます。
具体的な動作としては、レシーバーとなる文字列と引数で与えられたもう一つの文字列の各文字について、ASCIIの範囲であれば大文字と小文字を区別せずに比較を行います。例えば、「Hello」という文字列と「hello」という文字列を比較した場合、通常であれば異なる文字列と判断されますが、casecmp?メソッドを使用すると両者は等しいと判断され、trueが返されます。
このメソッドは、厳密な大文字小文字の区別が不要な場面で特に有用です。例えば、ユーザーが入力したキーワードを大文字小文字問わず検索したい場合や、設定ファイルのパスを比較する際などに活用できます。なお、比較対象が文字列ではない場合や、異なるエンコーディングを持つ文字列との比較ではnilを返します。正確な比較を行うためには、両方の文字列が同じエンコーディングを持つことが推奨されます。
構文(syntax)
1"Hello".casecmp?("hello")
引数(parameters)
other_str
- other_str: String: 比較対象の文字列
戻り値(return)
Boolean
Stringオブジェクトを、大文字・小文字を区別せずに比較した結果、等しい場合はtrue、そうでない場合はfalseを返します。