问题-regex_findall中的with_items

时间:2019-01-23 15:41:10

标签: ansible

我是该论坛的新手,对于如果我描述错误的内容,我感到非常抱歉。

我不知道如何在正则表达式中使用iteam:

这是变量search_01的输出

ok: [sample_host] => {

    "msg": [
        "text 01 \n",
        "text 02 \n",
        "text 03 \n",
        "text 04 \n""
    ]

这是变量search_02的输出

ok: [sample_host] => {

    "msg": [
        "10"
        "03"
        "08"
    ]

这是我的代码

 - name: "Sample"
   set_fact:    
     find_variable: "{{ search_01 | regex_findall(item) }}"
   with_items: "{{ search_02 }}"

输出:

TASK [Sample TASK] ****************************************************************************************************************************
fatal: [sample_host]: FAILED! => {"msg": "Unexpected templating type error occurred on ({{ search_01 | regex_findall(item) }}): expected string or buffer"}

有人知道为什么它不起作用吗?还是我应该使用其他解决方案?

1 个答案:

答案 0 :(得分:0)

好的,我找到了答案:

  - name: "Sample"
    set_fact:
      find_variable: "{{ search_01 | string | regex_findall(item) }}"
    when: 'item in (search_01 | string)'
    with_items: "{{ search_02 }}"