Filter 在ansible中为列表的每个元素添加前缀

Filter 在ansible中为列表的每个元素添加前缀,filter,ansible,jinja2,Filter,Ansible,Jinja2,我正在寻找一个带有netbios域名和反斜杠的用户列表。到目前为止,这是我能想到的最好办法: - hosts: servers vars: mylist: - Alice - Bob - Carol mystring: test mylist2: "{{ mylist | map('regex_replace', '^', mystring + '\' ) | list }}" tasks: - d

我正在寻找一个带有netbios域名和反斜杠的用户列表。到目前为止,这是我能想到的最好办法:

- hosts: servers 
   vars:
    mylist: 
     - Alice
     - Bob 
     - Carol
    mystring: test
    mylist2: "{{ mylist | map('regex_replace', '^', mystring + '\' ) | list }}" 
  tasks:
   - debug: var=mylist2
错误消息如下:

The offending line appears to be:

mystring: test
mylist2: "{{ mylist | map('regex_replace', '^', mystring + '\' ) | list }}"
                                                            ^ here
We could be wrong, but this one looks like it might be an issue with
missing quotes. Always quote template expression brackets when they
start a value. For instance:

with_items:
  - {{ foo }}

Should be written as:

with_items:
  - "{{ foo }}"
我面临着将反斜杠连接到我的变量的问题,因为ansible认为我在尝试转义某些内容,但没有放入我想要转义的内容。我还试图使用双反斜杠,但没有用


有人能建议这里的工作方法或替代方法吗。

简化表达式并将regex_replace参数放入变量中,例如

-hosts:localhost
变量:
mylist:
-爱丽丝
-鲍勃
-卡罗尔
mystring:测试
mylist2:“{mylist | map('regex_replace',_my_regex,_my_replace)| list}”
_my_regex:“^(.*)”
_my\u replace:“{{mystring~”\\\“~“\1”}”
任务:
-调试:
变量:mylist2
可能会给你想要的

mylist2:
-测试\Alice
-测试\Bob
-测试\Carol