On 06.08.2019 14:57, jean-christophe manciot wrote:
The goal is to* select all the lines of a list which do NOT contain a
specific word*.
For instance, "{{ files }}" contains a list of filenames. We need to
select
all the filenames which do not include the word 'all'.
So with:
files:
- aaaaaaaaaaa
- bbbbbbbbbbb
- cccccccccccc
- d-all-ddddddd
The expected result would be:
files_filtered::
- aaaaaaaaaaa
- bbbbbbbbbbb
- cccccccccccc
I unsuccessfully tried:
set_fact:
files_filtered: "{{ files | select('match',
'^(.*^((?!all).)*.+)$') | list }}"
The result is empty.
Any suggestion?
Use reject instead of select, and since you looking for containing use
search instead of match.
{{ files | reject('search', 'all') | list }}
--
Kai Stian Olstad
--
You received this message because you are subscribed to the Google Groups "Ansible
Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/8ac4a85921ae3ebea8c423fdaee4ca15%40olstad.com.