method

include?

Importance_3
Ruby latest stable (v1_8_7_72) - 3 notes - Class: Array
include?(p1) public

Returns true if the given object is present in self (that is, if any object == anObject), false otherwise.

   a = [ "a", "b", "c" ]
   a.include?("b")   #=> true
   a.include?("z")   #=> false
Show source
Register or log in to add new notes.
February 24, 2009
2 thanks

Test if one array includes the elements of another v2

Maybe a bit more readable way to write the previous snippet would’ve been

  puts "yay" if [1, 2, 3].all? { |i| (1..9).include?(i) }
  # => "yay"

  puts "nope" if [1, 2, 3, 'A'].any? { |i| not (1..9).include?(i) }
  # => "nope"
May 2, 2009
1 thank

Test if one array includes the elements of another

You can just use a set difference (aka minus) to see if one array includes all elements of another

  not_included = [1,2,3] - (1..9).to_a
  not_included      # => []

  not_included = [1,2,3,'A'] - (1..9).to_a
  not_included      # => ["A"]

Use intersection to test if any of the one are in the other:

  shared = [1,2,3,'A'] & (1..9).to_a
  shared     # => [1, 2, 3]
February 24, 2009
0 thanks

Test if one array includes the elements of another

Recently I’ve written this little snippet:

  puts "yay" if [1, 2, 3].each {|i| break unless (1..9).to_a.include?(i)}
  # => "yay"

  puts "nope" unless [1, 2, 3, 'A'].each {|i| break unless (1..9).to_a.include?(i)}
  # => "nope"