Ruby 2.1.0 リファレンスマニュアル > ライブラリ一覧 > 組み込みライブラリ > Symbolクラス > casecmp
casecmp(other) -> -1 | 0 | 1 | nil[permalink][rdoc]Symbol#<=> と同様にシンボルに対応する文字列の順序を比較しますが、アルファベットの大文字小文字の違いを無視します。
Symbol#casecmp? と違って大文字小文字の違いを無視するのは Unicode 全体ではなく、A-Z/a-z だけです。
other:p :aBcDeF.casecmp(:abcde) # => 1
p :aBcDeF.casecmp(:abcdef) # => 0
p :aBcDeF.casecmp(:abcdefg) # => -1
p :abcdef.casecmp(:ABCDEF) # => 0
p :"\u{e4 f6 fc}".casecmp(:"\u{c4 d6 dc}") # => 1
other がシンボルではない場合や、文字列のエンコーディングが非互換の場合は、nil を返します。
p :foo.casecmp("foo") # => nil
p "\u{e4 f6 fc}".encode("ISO-8859-1").to_sym.casecmp(:"\u{c4 d6 dc}") # => nil
[SEE_ALSO] String#casecmp, Symbol#<=>, Symbol#casecmp?