instance method Symbol#casecmp

casecmp(other) -> -1 | 0 | 1 | nil[permalink][rdoc][edit]

Symbol#<=> と同様にシンボルに対応する文字列の順序を比較しますが、アルファベットの大文字小文字の違いを無視します。

Symbol#casecmp? と違って大文字小文字の違いを無視するのは Unicode 全体ではなく、A-Z/a-z だけです。

[PARAM] other:
比較対象のシンボルを指定します。

:aBcDeF.casecmp(:abcde)     #=> 1
:aBcDeF.casecmp(:abcdef)    #=> 0
:aBcDeF.casecmp(:abcdefg)   #=> -1
:abcdef.casecmp(:ABCDEF)    #=> 0
:"\u{e4 f6 fc}".casecmp(:"\u{c4 d6 dc}") #=> 1

other がシンボルではない場合や、文字列のエンコーディングが非互換の場合は、nil を返します。


:foo.casecmp("foo")   #=> nil
"\u{e4 f6 fc}".encode("ISO-8859-1").to_sym.casecmp(:"\u{c4 d6 dc}")   #=> nil

[SEE_ALSO] String#casecmp, Symbol#<=>, Symbol#casecmp?