Ruby 1.9 doesn't hace String#any?


#1

Hi, I’m trying:
ruby 1.9.0 (2007-08-30 patchlevel 0) [i486-linux]
in Ubuntu.

I’ve realized that there is no method String#any?
Why? maybe it exists in a more recent version of 1.9?
Which would be the replacement method if not?

Thanks.


#2

El Viernes, 27 de Febrero de 2009, Iñaki Baz C. escribió:

Hi, I’m trying:
ruby 1.9.0 (2007-08-30 patchlevel 0) [i486-linux]
in Ubuntu.

I’ve realized that there is no method String#any?
Why? maybe it exists in a more recent version of 1.9?
Which would be the replacement method if not?

Ok I’ve found that in Ruby 1.9 String is no more an Enumerable (and
“any?” is
defined in Enumerable module).


#3

On Thu, Feb 26, 2009 at 6:33 PM, Iñaki Baz C. removed_email_address@domain.invalid wrote:

El Viernes, 27 de Febrero de 2009, Iñaki Baz C. escribió:

Hi, I’m trying:
ruby 1.9.0 (2007-08-30 patchlevel 0) [i486-linux]
in Ubuntu.

I’ve realized that there is no method String#any?
Why? maybe it exists in a more recent version of 1.9?
Which would be the replacement method if not?

Ok I’ve found that in Ruby 1.9 String is no more an Enumerable (and “any?” is
defined in Enumerable module).

Right, so you just need to be specific about what you want to enumerate
over:

“foo\nbar”.lines.any? { |e| e == “bar” }
=> true

“foo\nbar”.chars.any? { |e| e == “b” }
=> true

“foo\nbar”.bytes.any? { |e| e == 97 }
=> true

97.chr
=> “a”

-greg