Fn::Join
内部函数 Fn::Join
将一组值附加到单值中,中间用特定分隔符隔开。如果分隔符为空字符串,则该组值不通过分隔符被连接在一起。
声明
JSON
{ "Fn::Join" : [ "
delimiter
", [comma-delimited list of values
] ] }
YAML
完整函数名称的语法:
Fn::Join: [
delimiter
, [comma-delimited list of values
] ]
短格式的语法:
!Join [
delimiter
, [comma-delimited list of values
] ]
参数
- 分隔符
-
您希望发生在片断之间的值。分隔符只会发生在片断之间。它不会终止终值。
- ListOfValues
-
您想组合的值之列表。
返回值
组合的字符串。
示例
加入简单字符串数组
以下示例返回:"a:b:c"
。
JSON
"Fn::Join" : [ ":", [ "a", "b", "c" ] ]
YAML
!Join [ ":", [ a, b, c ] ]
使用带参数的 Ref 函数加入
以下示例使用 Fn::Join
构造一个字符串值。它将 Ref
函数与 AWS::Partition
参数和 AWS::AccountId
伪参数一起使用。
JSON
{ "Fn::Join": [ "", [ "arn:", { "Ref": "AWS::Partition" }, ":s3:::elasticbeanstalk-*-", { "Ref": "AWS::AccountId" } ] ] }
YAML
!Join - '' - - 'arn:' - !Ref AWS::Partition - ':s3:::elasticbeanstalk-*-' - !Ref AWS::AccountId
注意
另请参阅 Fn::Sub 函数以了解类似的功能。
支持的函数
对于 Fn::Join
分隔符,不能使用任何函数。您必须指定字符串值。
对于值的 Fn::Join
列表,您可使用以下函数:
-
Fn::Base64
-
Fn::FindInMap
-
Fn::GetAtt
-
Fn::GetAZs
-
Fn::If
-
Fn::ImportValue
-
Fn::Join
-
Fn::Split
-
Fn::Select
-
Fn::Sub
-
Ref