本文介绍您在使用Terraform过程中可能涉及的常用函数,更多类型的函数,请参见 Terraform 官网。
函数名称 | 函数说明 | 示例 | 运行结果 |
---|---|---|---|
abs | 取绝对值 | abs(-1024) | 1024 |
ceil | 向上取整 | ceil(5.5) | 6 |
floor | 向下取整 | floor(4.5) | 4 |
log | 计算对数 | log(16,2) | 4 |
pow | 计算指数幂 | pow(3,2) | 9 |
max | 取最大值 | max(10,50,3) | 50 |
min | 取最小值 | min(10,50,3) | 3 |
函数名称 | 函数说明 | 示例 | 运行结果 |
---|---|---|---|
chomp | 删除字符串末尾换行符 | chomp("hello\n") | "hello" |
format | 格式化字符串 | format("Hello, %s!", "abc") | "Hello, abc!" |
lower | 将字符串中的字母转为小写 | lower("HELLO") | "hello" |
upper | 将字符串中的字母转为大写 | upper("hello") | "HELLO" |
replace | 替换字符串中的指定字符 | replace("1+2+3", "+","-") | "1-2-3" |
join | 使用指定分隔符将列表拼接为字符串 | join(",", "one","two","three"]) | "one,two,three" |
split | 使用指定分隔符将列表拆分为字符串 | split(", ","One,Two,Three") | ["One","Two","Three"] |
substr | 通过偏移量和长度从指定字符串中提取一个子串 | substr("hello world!",0,3) | hell |
函数名称 | 函数说明 | 示例 | 运行结果 |
---|---|---|---|
element | 通过元素下标检索列表中对应元素值 | element(["One","Two","Three"],2) | Three |
index | 检索元素值在列表中的下标索引,如果该值不存在将报错 | index(["a","b","c"],"b") | 1 |
lookup | 指定列表中的key检索value。如果key不存在,则返回默认值。 | lookup({a="A",b="B"},"a","C") | A |
keys | 返回列表中的所有key | keys({a=1,b=2,c=3}) | ["a","b","c"] |
flatten | 展开列表中的嵌套元素 | flatten([["a","b"],[],["c"]]) | ["a","b","c"] |
length | 获取列表、映射或是字符串的长度 | length(["a","b","c"]) | 3 |
函数名称 | 函数说明 | 示例 | 运行结果 |
---|---|---|---|
toset | 将列表类型转换为集合类型 | toset(["a","b","a"]) | ["a","b"] |
tolist | 将集合类型转换为列表类型 | toset(["a","b","c"]) | ["a","b","c"] |
tonumber | 将字符串类型转换为数字类型 | tonumber("1") | 1 |
tostring | 将数字类型转换为字符串类型 | tostring(1) | "1" |