regex_replace 通过 jinja 模板中的 var 内容

regex_replace by a var content in jinja template

我有一个神社模板,我想用一个变量的内容替换一个字符串

例子:

ansible_hostname: 'host-to'
item.suffixe: 'cool'

结果将是:host-cool-to

我这样做了:

{{ ansible_hostname | regex_replace('-to', '-{{ item.suffixe }}-to') }}

当然 '-{{ item.suffixe }}-to' 没有被解释,结果是: 主机-{{ item.suffixe }}-to

是否可以在 regex_replace 中使用变量?如何 ?在 ansible 示例中,他们没有显示任何类似的内容

Q: "Is it possible to use a variable in regex_replace ?"

答:是的。这是可能的。将参数放入变量中更容易。例如

    - debug:
        msg: "{{ hostname | regex_replace(regex, replace) }}"
      vars:
        hostname: host-to
        suffix: cool
        regex: '-to'
        replace: '-{{ suffix }}-to'

给予

  msg: host-cool-to