如何使用regex_replace移动单词



如何使用 ansibleregex_replace移动单词 .

我有foo_jenkins,想获得secret/foo

hashicorp_vault_role_name : foo_jenkins

- name: "Create policy Jenkins"
hashivault_policy_set:
name: "{{hashicorp_vault_role_name}}"
rules: >
path "{{ hashicorp_vault_role_name|regex_replace('?', '?') }}/*" {
capabilities = ["list"]
}

从您提供的信息来看,以下内容应该会让您继续前进:

{{ hashicorp_vault_role_name | regex_replace('(.*)_jenkins', 'secret/\1') }}

基本上,取hashicorp_vault_role_name的值,匹配任何内容,后跟_jenkins捕获表达式的第一部分,并替换为secret/,后跟上一个捕获。

如果你需要稍微改变一下逻辑,或者你有其他相同类型的操作要执行,我建议你花一些时间学习正则表达式。

最新更新