资源编排服务提供多个内部函数,帮助您管理资源栈。您可以在定义资源(Resources)和输出(Outputs)时使用内部函数。本文为您介绍资源编排服务支持的内部函数相关信息。
注意事项
如果您在定义函数时使用YAML缩写函数的语法形式,并在函数的参数值中使用另一个函数。请确保至少其中一个函数使用完整的函数语法形式,否则函数无效。
下列函数语法形式无效。
!Base64Encode !Sub string !Base64Encode !Ref logical_ID
下列两种语法形式均有效。
!Base64Encode "Fn::Sub": string Fn::Base64Encode: !Sub string
支持的函数
函数名称 | 描述 |
返回输入字符串的Base64编码结果。 | |
返回Base64编码的字符串解码的结果。 | |
内部函数Fn::Str返回输入数字的字符串结果。 | |
调整字符串的缩进格式。 | |
返回与Mappings声明的双层映射中的键对应的值。 | |
返回模板中的资源的属性值。 | |
将一组值连接起来,用特定分隔符隔开。 | |
将输入字符串中的变量替换为您指定的值。 | |
通过索引返回列表或字典中的数据。 | |
返回指定参数或资源的值。 | |
返回指定Region的可用区列表。 | |
将字符串中指定子字符串用新字符串替换。 | |
通过指定分隔符对字符串进行切片,并返回所有切片组成的列表。 | |
比较两个值是否相等。如果两个值相等,则返回true;如果不相等,则返回false。 | |
代表AND运算符,最少包含两个条件。如果所有指定条件计算为true,则返回true;如果任意条件计算为false,则返回false。 | |
代表OR运算符,最少包含两个条件。如果任意一个指定条件计算为true,则返回true;如果所有条件都计算为false,则返回false。 | |
代表NOT运算符。对计算为false的条件,返回true;对计算为true的条件,返回false。 | |
查找列表中某个元素的索引。 | |
如果指定的条件计算为true,则返回一个值;如果指定的条件计算为false,则返回另一个值。在模板Resources和Outputs属性值中支持Fn::If内部函数。您可以使用 | |
返回对象的长度。 | |
合并多个列表为一个列表。 | |
解析JSON字符串,获取指定的Key在第一层所对应的值。 | |
将多个Mapping合并成一个以Mapping为元素的列表。 | |
对一组数求平均值。 | |
返回一个由map中元素构成的列表。 | |
对参数进行求和。 | |
对字符串形式的表达式进行计算。 | |
获取由数字组成的列表中的最大数字。 | |
获取由数字组成的列表中的最小数字。 | |
获取指定资源栈的输出。 | |
支持Jq功能。Jq功能详情请参见Jq文档。 | |
返回格式化后的当前时间。 | |
返回指定云市场镜像商品Code的默认镜像ID。 | |
返回指定数组中取值的真假情况。当数组中任意一项为真时,返回true(真),否则返回false(假)。 | |
如果列表中至少有一个成员与指定的值匹配,则返回true,否则返回false。 | |
如果第一个列表中的每个成员与第二个列表中的至少一个值匹配,则返回true,否则返回false。 | |
检查输入字符串的值能否与正则表达式匹配,如果能匹配则返回true,否则返回false。 |