Fn::Join
La función intrínseca Fn::Join
añade un conjunto de valores a un único valor separado por el delimitador indicado. Si un delimitador es la cadena vacía, el conjunto de valores se concatena sin delimitador.
Declaración
JSON
{ "Fn::Join" : [ "
delimiter
", [comma-delimited list of values
] ] }
YAML
Sintaxis del nombre de función completo:
Fn::Join: [
delimiter
, [comma-delimited list of values
] ]
Sintaxis de la forma abreviada:
!Join [
delimiter
, [comma-delimited list of values
] ]
Parámetros
- delimiter
-
Es el valor que desea que se produzca entre fragmentos. El delimitador solo se producirá entre fragmentos. No terminará el valor final.
- ListOfValues
-
Es la lista de valores que desea combinar.
Valor devuelto
La cadena combinada.
Ejemplos
Unirse a una matriz de cadenas simple
El ejemplo siguiente devuelve: "a:b:c"
.
JSON
"Fn::Join" : [ ":", [ "a", "b", "c" ] ]
YAML
!Join [ ":", [ a, b, c ] ]
Unirse mediante la función ref con parámetros
En el siguiente ejemplo se utiliza Fn::Join
para construir un valor de cadena. Utiliza la función Ref
con el parámetro AWS::Partition
y el pseudoparámetro 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
nota
En la función Fn::Sub también encontrará una funcionalidad similar.
Funciones compatibles
Para el delimitador Fn::Join
, no se puede usar ninguna función. Debe especificar un valor de cadena.
Para la lista de valores Fn::Join
, se pueden usar las siguientes funciones:
-
Fn::Base64
-
Fn::FindInMap
-
Fn::GetAtt
-
Fn::GetAZs
-
Fn::If
-
Fn::ImportValue
-
Fn::Join
-
Fn::Split
-
Fn::Select
-
Fn::Sub
-
Ref