# Two arrays: return only values that exist in both arrays?

**URL:** <https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068>\
**Category:** Ruby\
**Created:** [November 23, 2007, 1:25pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068 "2007-11-23T13:25:31Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 1:25pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/1 "2007-11-23T13:25:31Z")

</div>

Hi all

a = [:one, :two, :three, :six]  
b = [:two, :four, 5️⃣ six]

I want to extract the values of two arrays which exist in both ones (a  
and b):

# =\> [:two, :six]

Does there exist a method for this?

Thanks  
Josh

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 1:55pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/2 "2007-11-23T13:55:54Z")

</div>

On Nov 23, 1:25 pm, Joshua M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> Does there exist a method for this?
> 
> ## Thanks Josh
> 
> Posted viahttp://www.ruby-forum.com/.

Try  
a&b

Dima 🙂

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 2:07pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/3 "2007-11-23T14:07:05Z")

</div>

How about the elements that are in one but not the other array?

Where are these methods documented?

Thank you

Victor

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 2:21pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/4 "2007-11-23T14:21:19Z")

</div>

Thanks! But right - where are they documented?

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 2:27pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/5 "2007-11-23T14:27:34Z")

</div>

You’re looking for “a - b”, in that case.

[http://ruby-doc.org/core/classes/Array.html](http://ruby-doc.org/core/classes/Array.html)

Hope that helps.

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 2:31pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/6 "2007-11-23T14:31:08Z")

</div>

Joshua M. wrote:

> Thanks! But right - where are they documented?  
> in ruby-doc 🙂

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 2:32pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/7 "2007-11-23T14:32:54Z")

</div>

[http://ruby-doc.org/core/classes/Array.html#M002235](http://ruby-doc.org/core/classes/Array.html#M002235)

–Garret

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 3:14pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/8 "2007-11-23T15:14:33Z")

</div>

Thank you

---

<div class="post-metadata">

**Author:** ![josh](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/45deac/32.png) [@josh](https://www.ruby-forum.com/u/josh)\
**Post date:** [November 23, 2007, 8:07pm UTC](https://www.ruby-forum.com/t/two-arrays-return-only-values-that-exist-in-both-arrays/121068/9 "2007-11-23T20:07:13Z")

</div>

On Nov 23, 3:13 pm, Victor R. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > Hope that helps.
> > 
> > > On Nov 23, 2007 7:55 AM, Dejan D. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:
> 
> > > > a&b
> 
> > > > Dima 🙂

Programming Ruby  
The Pragmatic Programmer’s Guide

class Array  
instance methods  
& arr & anOtherArray → anArray

Set Intersection—Returns a new array containing elements common to  
the two arrays, with no duplicates.

[1, 1, 3, 5] & [1, 2, 3] \>\> [1, 3]
