# String#index/include limitation in number of characters

**URL:** <https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520>\
**Category:** Ruby\
**Created:** [May 18, 2007, 11:08pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520 "2007-05-18T23:08:01Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 18, 2007, 11:08pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/1 "2007-05-18T23:08:01Z")

</div>

Do you understand why the last include gives false ?? It seems that the  
limit is 24 characters, is it a bug ?

irb(main):001:0\>  
s=“asdfasdfasdfasdfasdfppppppppppppppppppppppppasdfasdf”  
=\> “asdfasdfasdfasdfasdfppppppppppppppppppppppppasdfasdf”  
irb(main):002:0\> s1=“pppppppppppppppppppppppp”  
=\> “pppppppppppppppppppppppp”  
irb(main):003:0\> s.include?(s1)  
=\> true  
irb(main):004:0\> s1=“ppppppppppppppppppppppppasdf”  
=\> “ppppppppppppppppppppppppasdf”  
irb(main):005:0\> s.include?(s1)  
=\> false

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 18, 2007, 11:35pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/2 "2007-05-18T23:35:28Z")

</div>

In message [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid), Eu Fe  
writes:

> Do you understand why the last include gives false ?? It seems that the  
> limit is 24 characters, is it a bug ?

I don’t think the limit is 24 characters.

> =\> false  
> I cannot reproduce this. I cut and paste it:

irb(main):007:0\>  
s=“asdfasdfasdfasdfasdfppppppppppppppppppppppppasdfasdf”  
=\> “asdfasdfasdfasdfasdfppppppppppppppppppppppppasdfasdf”  
irb(main):008:0\> s1=“ppppppppppppppppppppppppasdf”  
=\> “ppppppppppppppppppppppppasdf”  
irb(main):009:0\> s.include?(s1)  
=\> true

-s

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 18, 2007, 11:46pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/3 "2007-05-18T23:46:40Z")

</div>

Maybe my platform or interpreter ??? That’s really weird:  
irb 0.9(02/07/03)  
Linux 2.6.9-34.ELsmp #1 SMP Thu Mar 9 06:23:23 GMT 2006 x86\_64 x86\_64  
x86\_64 GNU/Linux

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 18, 2007, 11:47pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/4 "2007-05-18T23:47:20Z")

</div>

ruby 1.8.1 (2003-12-25) [x86\_64-linux-gnu]

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 19, 2007, 12:03am UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/5 "2007-05-19T00:03:49Z")

</div>

OK I upgraded to ruby 1.8.6 with irb 9.5 it solves the problem.

It seems to be a bug in the previous version !

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 19, 2007, 2:53pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/6 "2007-05-19T14:53:39Z")

</div>

On Sat, May 19, 2007 at 07:03:50AM +0900, Eu Fe wrote:

> OK I upgraded to ruby 1.8.6 with irb 9.5 it solves the problem.
> 
> It seems to be a bug in the previous version !

Yep, don’t use the one which comes with Red Hat/CentOS. It breaks with  
all  
sorts of things.

There’s a 1.8.5 pre-built package in the CentOS ‘testing’ directory  
which  
works well.

Regards,

Brian.

---

<div class="post-metadata">

**Author:** ![stash](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/c0e974/32.png) [@stash](https://www.ruby-forum.com/u/stash)\
**Post date:** [May 18, 2007, 11:42pm UTC](https://www.ruby-forum.com/t/string-index-include-limitation-in-number-of-characters/104520/7 "2007-05-18T23:42:28Z")

</div>

On Sat, May 19, 2007 at 06:08:02AM +0900, Eu Fe wrote:

> irb(main):004:0\> s1=“ppppppppppppppppppppppppasdf”  
> =\> “ppppppppppppppppppppppppasdf”  
> irb(main):005:0\> s.include?(s1)  
> =\> false

I get ‘true’ in both cases. I am using the package supplied with Ubuntu  
Linux 6.06, which gives RUBY\_VERSION as 1.8.4

What platform and ruby version are you using?
