获取项目包含子字符串 Terraform
Get item contains substring Terraform
我的代码中有以下变量:
variable "mylist" {
default = ["cardigan.com", "crazy-apple.com", "blue-pen.com"]
}
在创建给定资源时,我必须根据子字符串传递此列表中的元素名称。例如,如何检索此列表中包含子字符串“apple”的元素?
collect/filter/map 族函数在 Terraform 中也不存在。因此,我们可以在列表构造函数中使用带有条件的 for
表达式 lambda:
[ for item in var.my_list : item if can(regex("apple", item)) ]
和这个 returns ["crazy-apple.com"]
作为您的示例变量值。然后,您可以访问其元素以 return 字符串,例如crazy-apple.com
正常。如果您使用 >= 0.15,并且非常有信心只存在一个匹配项,那么您也可以这样做:
one([ for item in var.my_list : item if can(regex("apple", item)) ])
直接returncrazy-apple.com
.
我的代码中有以下变量:
variable "mylist" {
default = ["cardigan.com", "crazy-apple.com", "blue-pen.com"]
}
在创建给定资源时,我必须根据子字符串传递此列表中的元素名称。例如,如何检索此列表中包含子字符串“apple”的元素?
collect/filter/map 族函数在 Terraform 中也不存在。因此,我们可以在列表构造函数中使用带有条件的 for
表达式 lambda:
[ for item in var.my_list : item if can(regex("apple", item)) ]
和这个 returns ["crazy-apple.com"]
作为您的示例变量值。然后,您可以访问其元素以 return 字符串,例如crazy-apple.com
正常。如果您使用 >= 0.15,并且非常有信心只存在一个匹配项,那么您也可以这样做:
one([ for item in var.my_list : item if can(regex("apple", item)) ])
直接returncrazy-apple.com
.