Fn::Join
A função intrínseca Fn::Join
anexa um conjunto de valores em um único valor, separados pelo delimitador especificado. Se um delimitador é a string vazia, o conjunto de valores é concatenado sem delimitador.
Declaração
JSON
{ "Fn::Join" : [ "
delimiter
", [comma-delimited list of values
] ] }
YAML
Sintaxe para o nome da função completo:
Fn::Join: [
delimiter
, [comma-delimited list of values
] ]
Sintaxe para a forma resumida:
!Join [
delimiter
, [comma-delimited list of values
] ]
Parâmetros
- delimitador
-
O valor que você deseja que ocorra entre estilhaços. O delimitador ocorrerá apenas entre estilhaços. Não encerrará o valor final.
- ListOfValues
-
A lista de valores a ser combinados.
Valor de retorno
A string combinada.
Exemplos
Unir uma matriz de strings simples
O seguinte exemplo retorna: "a:b:c"
.
JSON
"Fn::Join" : [ ":", [ "a", "b", "c" ] ]
YAML
!Join [ ":", [ a, b, c ] ]
Unir usando a função Ref com parâmetros
O exemplo a seguir usa Fn::Join
para construir um valor de string. Ele usa a função Ref
com o parâmetro AWS::Partition
e o 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
Consulte também a função Fn::Sub para funcionalidade semelhante.
Funções compatíveis
No delimitador Fn::Join
, não é possível usar nenhuma função. É necessário especificar um valor de string.
Para a lista de valores Fn::Join
, use as seguintes funções:
-
Fn::Base64
-
Fn::FindInMap
-
Fn::GetAtt
-
Fn::GetAZs
-
Fn::If
-
Fn::ImportValue
-
Fn::Join
-
Fn::Split
-
Fn::Select
-
Fn::Sub
-
Ref