Функция regex_replace
работает так, как вы ожидаете. Двойные обратные слеши, которые вы видите, являются оценкой строки по debug
. Например, отобразить длину строки
- set_fact:
ip2: "{{ ip | regex_replace(myregex, myreplace) }}"
vars:
myregex: '\.'
myreplace: '\.'
- debug:
msg: "length of {{ ip2 }} is {{ ip2|length }}"
дают
"msg": "length of 192\\.168\\.5\\.0 is 14"
Также возможно записать строку в файл. Например, шаблон
shell> cat test.txt.j2
{{ ip2 }}
и задача
- template:
src: test.txt.j2
dest: test.txt
дают
shell> cat test.txt
192\.168\.5\.0