ansible.builtin.intersect filter – intersection of lists


This filter plugin is part of ansible-core and included in all Ansible installations. In most cases, you can use the short plugin name intersect. However, we recommend you use the Fully Qualified Collection Name (FQCN) ansible.builtin.intersect for easy linking to the plugin documentation and to avoid conflicting with other collections that may have the same filter plugin name.


  • Provide a list with the common elements from other lists.

  • Items in the resulting list are returned in arbitrary order.


This describes the input of the filter, the value before | ansible.builtin.intersect.




list / elements=string / required

A list.

Keyword parameters

This describes keyword parameters of the filter. These are the values key1=value1, key2=value2 and so on in the following example: input | ansible.builtin.intersect(key1=value1, key2=value2, ...)




list / elements=string / required

A list.

See Also

See also

ansible.builtin.difference filter plugin

the difference of one list from another.

ansible.builtin.symmetric_difference filter plugin

different items from two lists.

ansible.builtin.unique filter plugin

set of unique items of a list.

ansible.builtin.union filter plugin

union of lists.


# return only the common elements of list1 and list2
# list1: [1, 2, 5, 3, 4, 10]
# list2: [1, 2, 3, 4, 5, 11, 99]
{{ list1 | intersect(list2) }}
# => [1, 2, 5, 3, 4]

Return Value



Return value

list / elements=string

A list with unique elements common to both lists, also known as a set.

Returned: success


  • Brian Coca (@bcoca)


Configuration entries for each entry type have a low to high priority order. For example, a variable that is lower in the list will override a variable that is higher up.