Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Fn::Split
Per dividere una stringa in un elenco di valori di stringa in modo che tu possa selezionare un elemento dall'elenco di stringhe risultante, utilizza la funzione Fn::Split
intrinseca. Specifica la posizione delle divisioni con un delimitatore, ad esempio ,
(una virgola). Dopo la divisione di una stringa, utilizza la funzione Fn::Select per scegliere un elemento specifico.
Ad esempio, se una stringa delimitata dalla virgola di ID di una sottorete viene importata nel tuo modello di stack, puoi suddividere la stringa in corrispondenza di ciascuna virgola. Dall'elenco di ID della sottorete, utilizza la funzione Fn::Select
intrinseca per specificare un ID della sottorete per una risorsa.
Dichiarazione
JSON
{ "Fn::Split" : [ "
", "
delimiter
source string
" ] }
YAML
Sintassi per il nome completo della funzione:
Fn::Split: [
,
delimiter
source string
]
Sintassi per la forma breve:
!Split [
,
delimiter
source string
]
Parametri
Devi specificare entrambi i parametri.
- delimitatore
-
Un valore di stringa che determina dove la stringa di origine viene suddivisa.
- stringa di origine
-
Il valore di stringa che desideri suddividere.
Valore restituito
Un elenco di valori di stringa.
Esempi
I seguenti esempi illustrano il comportamento della funzione Fn::Split
.
Elenco semplice
L'esempio seguente suddivide una stringa in corrispondenza di ciascuna barra verticale (|
). La funzione restituisce ["a", "b", "c"]
.
JSON
{ "Fn::Split" : [ "|" , "a|b|c" ] }
YAML
!Split [ "|" , "a|b|c" ]
Elenco con valori di stringa vuoti
Se suddividi una stringa con delimitatori consecutivi, l'elenco risultante includerà una stringa vuota. L'esempio seguente mostra come viene suddivisa una stringa con due delimitatori consecutivi e un delimitatore aggiunto. La funzione restituisce ["a", "", "c",
""]
.
JSON
{ "Fn::Split" : [ "|" , "a||c|" ] }
YAML
!Split [ "|" , "a||c|" ]
Suddivisione di un valore di output importato
L'esempio seguente mostra la suddivisione di un valore di output importato e la selezione del terzo elemento dall'elenco risultante di ID della sottorete, come specificato dalla funzione Fn::Select
.
JSON
{ "Fn::Select" : [ "2", { "Fn::Split": [",", {"Fn::ImportValue": "AccountSubnetIDs"}]}] }
YAML
!Select [2, !Split [",", !ImportValue AccountSubnetIDs]]
Funzioni supportate
Per il delimitatore Fn::Split
, non è possibile utilizzare alcuna funzione. Devi specificare un valore di stringa.
Per l'elenco di valori Fn::Split
, puoi utilizzare le seguenti funzioni:
-
Fn::Base64
-
Fn::FindInMap
-
Fn::GetAtt
-
Fn::GetAZs
-
Fn::If
-
Fn::ImportValue
-
Fn::Join
-
Fn::Select
-
Fn::Sub
-
Ref