我有以下内容
- set_fact:
test_result: " {{ htmlres.content | regex_search('http://website([0-9]+)', '\\1') }}"
使用调试,将返回以下内容" '[01]'"
由于只想要数字,我使用该函数进行了一些实验,并通过添加以下内容replace()
删除了数字:[ ]
- set_fact:
test_result: " {{ htmlres.content | regex_search('http://website([0-9]+)', '\\1')
| replace('[','') | replace(']','') }}"
我现在的问题是现在的输出" '01'
,我似乎无法删除'
或空格。
由于某种原因,添加| trim
到末尾并不会删除空格,并且添加regex_search('\'','')
似乎也无法逃脱字符并起作用。
我是否遗漏了什么?
这是第一次删除后的调试输出:
"msg": [
" '01'",
...
谢谢
答案1
你想的太困难了。regex_search()
返回一个数组,并且您想要第一个项目。
- set_fact:
test_result: "{{ htmlres.content | regex_search('http://website([0-9]+)', '\\1') | first }}"
开头的空白是你分配的结果test_result
:
test_result: " {{ htmlres.content ...
^-- here
只需将其移除即可。