# String#== is not transitive

**URL:** <https://www.ruby-forum.com/t/string-is-not-transitive/124045>\
**Category:** Development\
**Created:** [December 24, 2007, 1:06am UTC](https://www.ruby-forum.com/t/string-is-not-transitive/124045 "2007-12-24T01:06:23Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [December 24, 2007, 1:06am UTC](https://www.ruby-forum.com/t/string-is-not-transitive/124045/1 "2007-12-24T01:06:23Z")

</div>

String#== e$B$,?d0\N’$rK~$?$7$F$$$J$$e(B (e$B$D$^$jF1CM4X78$G$J$$e(B)  
e$B$Ne(B  
e$B$O$h$m$7$/$J$$$s$8$c$J$$$G$7$g$&$+!#e(B

% ./ruby -ve ’  
u = “\xe0\xa0\xa1”.force\_encoding(“utf-8”)  
e = “\xe0\xa0\xa1”.force\_encoding(“euc-jp”)  
s = “\xe0\xa0\xa1”.force\_encoding(“sjis”)  
p u == e  
p e == s  
p u == s  
’  
ruby 1.9.0 (2007-12-24 revision 0) [i686-linux]  
true  
true  
false

u e$B$He(B e e$B$,F1$8$Ge(B e e$B$He(B s e$B$,F1$8$J$N$K!"e(Bu e$B$He(B  
s e$B$,0[$J$k$H$$$&$Ne(B  
e$B$Oe(B == e$B$KBP$9$k4|BT$KH?$7$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [December 24, 2007, 1:59am UTC](https://www.ruby-forum.com/t/string-is-not-transitive/124045/2 "2007-12-24T01:59:01Z")

</div>

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:32693] String#== is not transitive”  
on Mon, 24 Dec 2007 09:05:29 +0900, Tanaka A. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
writes:

|String#== e$B$,?d0\N’$rK~$?$7$F$$$J$$e(B (e$B$D$^$jF1CM4X78$G$J$$e(B) e$B$Ne(B  
|e$B$O$h$m$7$/$J$$$s$8$c$J$$$G$7$g$&$+!#e(B

e$B$\*$C$7$c$kDL$j$G$9!#D\>$7$^$9!#e(B
