ARM şablonları için dizi işlevleri
Bu makalede, dizilerle çalışmaya yönelik şablon işlevleri açıklanmaktadır.
Bir değerle sınırlandırılmış dize değerleri dizisi almak için bkz . bölme.
İpucu
ARM şablonlarıyla aynı özellikleri sunduğundan ve söz diziminin kullanımı daha kolay olduğundan Bicep'i öneririz. Daha fazla bilgi edinmek için bkz . dizi işlevleri.
dizi
array(convertToArray)
Değeri bir diziye dönüştürür.
Bicep'te dizi işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
convertToArray | Yes | int, dize, dizi veya nesne | Diziye dönüştürülecek değer. |
Dönüş değeri
Bir dizi.
Örnek
Aşağıdaki örnekte, dizi işlevinin farklı türlerle nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"intToConvert": {
"type": "int",
"defaultValue": 1
},
"stringToConvert": {
"type": "string",
"defaultValue": "efgh"
},
"objectToConvert": {
"type": "object",
"defaultValue": {
"a": "b",
"c": "d"
}
}
},
"resources": [
],
"outputs": {
"intOutput": {
"type": "array",
"value": "[array(parameters('intToConvert'))]"
},
"stringOutput": {
"type": "array",
"value": "[array(parameters('stringToConvert'))]"
},
"objectOutput": {
"type": "array",
"value": "[array(parameters('objectToConvert'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
intOutput | Dizi | [1] |
stringOutput | Dizi | ["efgh"] |
objectOutput | Dizi | [{"a": "b", "c": "d"}] |
concat
concat(arg1, arg2, arg3, ...)
Birden çok diziyi birleştirir ve birleştirilmiş diziyi döndürür ya da birden çok dize değerini birleştirir ve birleştirilmiş dizeyi döndürür.
Bicep'te concat işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi veya dize | Birleştirme için ilk dizi veya dize. |
diğer bağımsız değişkenler | Hayır | dizi veya dize | Birleştirme için sıralı sırada daha fazla dizi veya dize. |
Bu işlev herhangi bir sayıda bağımsız değişken alabilir ve parametreler için dizeleri veya dizileri kabul edebilir. Ancak, parametreler için hem dizileri hem de dizeleri sağlayamazsınız. Diziler yalnızca diğer dizilerle birleştirilir.
Dönüş değeri
Birleştirilmiş değer dizesi veya dizisi.
Örnek
Aşağıdaki örnekte iki dizinin nasıl birleştirildiği gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstArray": {
"type": "array",
"defaultValue": [
"1-1",
"1-2",
"1-3"
]
},
"secondArray": {
"type": "array",
"defaultValue": [
"2-1",
"2-2",
"2-3"
]
}
},
"resources": [
],
"outputs": {
"return": {
"type": "array",
"value": "[concat(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
return | Dizi | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] |
Aşağıdaki örnekte iki dize değerinin nasıl birleştirildiği ve birleştirilmiş bir dizenin nasıl döndürüleceği gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"prefix": {
"type": "string",
"defaultValue": "prefix"
}
},
"resources": [],
"outputs": {
"concatOutput": {
"type": "string",
"value": "[concat(parameters('prefix'), '-', uniqueString(resourceGroup().id))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
concatOutput | String | prefix-5yj4yjf5mbg72 |
içerir
contains(container, itemToFind)
Dizinin bir değer, nesnenin anahtar mı yoksa dizenin alt dize mi içerdiğini denetler. Dize karşılaştırması büyük/küçük harfe duyarlıdır. Ancak, bir nesnenin anahtar içerip içermediğini test ederken karşılaştırma büyük/küçük harfe duyarlı değildir.
Bicep'te contains işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
kapsayıcı | Yes | dizi, nesne veya dize | Bulunabilecek değeri içeren değer. |
itemToFind | Yes | dize veya int | Bulunacak değer. |
Dönüş değeri
Öğe bulunursa True , değilse False.
Örnek
Aşağıdaki örnekte, farklı türlerde contains özelliğinin nasıl kullanılacağı gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"stringToTest": {
"type": "string",
"defaultValue": "OneTwoThree"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"stringTrue": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'e')]"
},
"stringFalse": {
"type": "bool",
"value": "[contains(parameters('stringToTest'), 'z')]"
},
"objectTrue": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'one')]"
},
"objectFalse": {
"type": "bool",
"value": "[contains(parameters('objectToTest'), 'a')]"
},
"arrayTrue": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'three')]"
},
"arrayFalse": {
"type": "bool",
"value": "[contains(parameters('arrayToTest'), 'four')]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
stringTrue | Boole | True |
stringFalse | Boole | False |
objectTrue | Boole | True |
objectFalse | Boole | False |
arrayTrue | Boole | True |
arrayFalse | Boole | False |
createArray
createArray(arg1, arg2, arg3, ...)
Parametrelerden bir dizi oluşturur.
Bicep'te createArray
işlev desteklenmez. Dizi oluşturmak için bkz. Bicep dizisi veri türü.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
args | Hayır | Dize, Tamsayı, Dizi veya Nesne | Dizideki değerler. |
Dönüş değeri
Bir dizi. Parametre sağlanmazsa boş bir dizi döndürür.
Örnek
Aşağıdaki örnekte createArray'nin farklı türlerle nasıl kullanılacağı gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"objectToTest": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"stringArray": {
"type": "array",
"value": "[createArray('a', 'b', 'c')]"
},
"intArray": {
"type": "array",
"value": "[createArray(1, 2, 3)]"
},
"objectArray": {
"type": "array",
"value": "[createArray(parameters('objectToTest'))]"
},
"arrayArray": {
"type": "array",
"value": "[createArray(parameters('arrayToTest'))]"
},
"emptyArray": {
"type": "array",
"value": "[createArray()]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
stringArray | Dizi | ["a", "b", "c"] |
intArray | Dizi | [1, 2, 3] |
objectArray | Dizi | [{"one": "a", "two": "b", "three": "c"}] |
arrayArray | Dizi | [["bir", "iki", "üç"]] |
emptyArray | Dizi | [] |
empty
empty(itemToTest)
Dizi, nesne veya dizenin boş olup olmadığını belirler.
Bicep'te boş işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
itemToTest | Yes | dizi, nesne veya dize | Boş olup olmadığını denetlemek için gereken değer. |
Dönüş değeri
Değer boşsa True, değilse False döndürür.
Örnek
Aşağıdaki örnek bir dizi, nesne ve dizenin boş olup olmadığını denetler.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": []
},
"testObject": {
"type": "object",
"defaultValue": {}
},
"testString": {
"type": "string",
"defaultValue": ""
}
},
"resources": [
],
"outputs": {
"arrayEmpty": {
"type": "bool",
"value": "[empty(parameters('testArray'))]"
},
"objectEmpty": {
"type": "bool",
"value": "[empty(parameters('testObject'))]"
},
"stringEmpty": {
"type": "bool",
"value": "[empty(parameters('testString'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayEmpty | Boole | True |
objectEmpty | Boole | True |
stringEmpty | Boole | True |
Birinci
first(arg1)
Dizinin ilk öğesini veya dizenin ilk karakterini döndürür.
Bicep'te ilk işlevi kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi veya dize | İlk öğeyi veya karakteri almak için değer. |
Dönüş değeri
Bir dizideki ilk öğenin türü (dize, int, dizi veya nesne) veya bir dizenin ilk karakteri.
Örnek
Aşağıdaki örnekte, bir dizi ve dize ile ilk işlevin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[first(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[first('One Two Three')]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | String | bir |
stringOutput | String | O |
ındexof
indexOf(arrayToSearch, itemToFind)
Bir öğenin dizideki ilk oluşumunun dizini için bir tamsayı döndürür. Karşılaştırma, dizeler için büyük/küçük harfe duyarlıdır.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arrayToSearch | Yes | dizi | Arama yapılan öğenin dizinini bulmak için kullanılacak dizi. |
itemToFind | Yes | int, dize, dizi veya nesne | Dizide bulunacak öğe. |
Dönüş değeri
Dizideki öğenin ilk dizinini temsil eden tamsayı. Dizin sıfır tabanlıdır. Öğe bulunamazsa-1 döndürülür.
Örnekler
Aşağıdaki örnekte indexOf ve lastIndexOf işlevlerinin nasıl kullanılacağı gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"names": [
"one",
"two",
"three"
],
"numbers": [
4,
5,
6
],
"collection": [
"[variables('names')]",
"[variables('numbers')]"
],
"duplicates": [
1,
2,
3,
1
]
},
"resources": [],
"outputs": {
"index1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'two')]"
},
"index2": {
"type": "int",
"value": "[indexOf(variables('names'), 'one')]"
},
"notFoundIndex1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'Three')]"
},
"index3": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), 4)]"
},
"index4": {
"type": "int",
"value": "[indexOf(variables('numbers'), 6)]"
},
"notFoundIndex2": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), '5')]"
},
"index5": {
"type": "int",
"value": "[indexOf(variables('collection'), variables('numbers'))]"
},
"index6": {
"type": "int",
"value": "[indexOf(variables('duplicates'), 1)]"
},
"index7": {
"type": "int",
"value": "[lastIndexOf(variables('duplicates'), 1)]"
}
}
}
Yukarıdaki örnekten alınan çıkış:
Adı | Tür | Değer |
---|---|---|
dizin1 | int | 1 |
dizin2 | int | 0 |
dizin3 | int | 0 |
dizin4 | int | 2 |
dizin5 | int | 1 |
index6 | int | 0 |
dizin7 | int | 3 |
notFoundIndex1 | int | -1 |
notFoundIndex2 | int | -1 |
Kesişim
intersection(arg1, arg2, arg3, ...)
Parametrelerden ortak öğeler içeren tek bir dizi veya nesne döndürür.
Bicep'te kesişim işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi veya nesne | Ortak öğeleri bulmak için kullanılacak ilk değer. |
arg2 | Yes | dizi veya nesne | Ortak öğeleri bulmak için kullanılacak ikinci değer. |
diğer bağımsız değişkenler | Hayır | dizi veya nesne | Ortak öğeleri bulmak için kullanılacak daha fazla değer. |
Dönüş değeri
Ortak öğeleri olan bir dizi veya nesne.
Örnek
Aşağıdaki örnekte, diziler ve nesnelerle kesişim özelliğinin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c"
}
},
"secondObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "z",
"three": "c"
}
},
"firstArray": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
},
"secondArray": {
"type": "array",
"defaultValue": [ "two", "three" ]
}
},
"resources": [
],
"outputs": {
"objectOutput": {
"type": "object",
"value": "[intersection(parameters('firstObject'), parameters('secondObject'))]"
},
"arrayOutput": {
"type": "array",
"value": "[intersection(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
objectOutput | Object | {"one": "a", "three": "c"} |
arrayOutput | Dizi | ["iki", "üç"] |
Sonuncu
last(arg1)
Dizinin son öğesini veya dizenin son karakterini döndürür.
Bicep'te son işlevi kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi veya dize | Son öğeyi veya karakteri almak için değer. |
Dönüş değeri
Bir dizideki son öğenin türü (dize, int, dizi veya nesne) veya dizenin son karakteri.
Örnek
Aşağıdaki örnekte, bir dizi ve dize ile son işlevin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
}
},
"resources": [
],
"outputs": {
"arrayOutput": {
"type": "string",
"value": "[last(parameters('arrayToTest'))]"
},
"stringOutput": {
"type": "string",
"value": "[last('One Two Three')]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | String | üç |
stringOutput | String | e |
Lastındexof
lastIndexOf(arrayToSearch, itemToFind)
Bir öğenin dizideki son oluşumunun dizini için bir tamsayı döndürür. Karşılaştırma, dizeler için büyük/küçük harfe duyarlıdır.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arrayToSearch | Yes | dizi | Arama yapılan öğenin dizinini bulmak için kullanılacak dizi. |
itemToFind | Yes | int, dize, dizi veya nesne | Dizide bulunacak öğe. |
Dönüş değeri
Dizideki öğenin son dizinini temsil eden tamsayı. Dizin sıfır tabanlıdır. Öğe bulunamazsa-1 döndürülür.
Örnekler
Aşağıdaki örnekte indexOf ve lastIndexOf işlevlerinin nasıl kullanılacağı gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"names": [
"one",
"two",
"three"
],
"numbers": [
4,
5,
6
],
"collection": [
"[variables('names')]",
"[variables('numbers')]"
],
"duplicates": [
1,
2,
3,
1
]
},
"resources": [],
"outputs": {
"index1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'two')]"
},
"index2": {
"type": "int",
"value": "[indexOf(variables('names'), 'one')]"
},
"notFoundIndex1": {
"type": "int",
"value": "[lastIndexOf(variables('names'), 'Three')]"
},
"index3": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), 4)]"
},
"index4": {
"type": "int",
"value": "[indexOf(variables('numbers'), 6)]"
},
"notFoundIndex2": {
"type": "int",
"value": "[lastIndexOf(variables('numbers'), '5')]"
},
"index5": {
"type": "int",
"value": "[indexOf(variables('collection'), variables('numbers'))]"
},
"index6": {
"type": "int",
"value": "[indexOf(variables('duplicates'), 1)]"
},
"index7": {
"type": "int",
"value": "[lastIndexOf(variables('duplicates'), 1)]"
}
}
}
Yukarıdaki örnekten alınan çıkış:
Adı | Tür | Değer |
---|---|---|
dizin1 | int | 1 |
dizin2 | int | 0 |
dizin3 | int | 0 |
dizin4 | int | 2 |
dizin5 | int | 1 |
index6 | int | 0 |
dizin7 | int | 3 |
notFoundIndex1 | int | -1 |
notFoundIndex2 | int | -1 |
uzunluk
length(arg1)
Bir dizideki öğe sayısını, dizedeki karakterleri veya nesnedeki kök düzeyi özellikleri döndürür.
Bicep'te length işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi, dize veya nesne | Öğe sayısını almak için kullanılacak dizi, karakter sayısını almak için kullanılacak dize veya kök düzeyi özelliklerin sayısını almak için kullanılacak nesne. |
Dönüş değeri
Bir int.
Örnek
Aşağıdaki örnekte, bir dizi ve dize ile uzunluğun nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"stringToTest": {
"type": "string",
"defaultValue": "One Two Three"
},
"objectToTest": {
"type": "object",
"defaultValue": {
"propA": "one",
"propB": "two",
"propC": "three",
"propD": {
"propD-1": "sub",
"propD-2": "sub"
}
}
}
},
"resources": [],
"outputs": {
"arrayLength": {
"type": "int",
"value": "[length(parameters('arrayToTest'))]"
},
"stringLength": {
"type": "int",
"value": "[length(parameters('stringToTest'))]"
},
"objectLength": {
"type": "int",
"value": "[length(parameters('objectToTest'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayLength | Int | 3 |
stringLength | Int | 13 |
objectLength | Int | 4 |
Kaynak oluştururken yineleme sayısını belirtmek için bu işlevi bir diziyle kullanabilirsiniz. Aşağıdaki örnekte, siteNames parametresi web sitelerini oluştururken kullanılacak bir ad dizisine başvuracak.
"copy": {
"name": "websitescopy",
"count": "[length(parameters('siteNames'))]"
}
Bu işlevi bir diziyle kullanma hakkında daha fazla bilgi için bkz . ARM şablonlarında kaynak yinelemesi.
max
max(arg1)
Bir tamsayı dizisinden veya virgülle ayrılmış bir tamsayı listesinden en büyük değeri döndürür.
Bicep'te max işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | tamsayı dizisi veya virgülle ayrılmış tamsayı listesi | En büyük değeri almak için koleksiyon. |
Dönüş değeri
En büyük değeri temsil eden bir int.
Örnek
Aşağıdaki örnekte, bir dizi ve tamsayı listesiyle max işlevinin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ 0, 3, 2, 5, 4 ]
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "int",
"value": "[max(parameters('arrayToTest'))]"
},
"intOutput": {
"type": "int",
"value": "[max(0,3,2,5,4)]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | Int | 5 |
intOutput | Int | 5 |
dk
min(arg1)
Bir tamsayı dizisinden veya virgülle ayrılmış bir tamsayı listesinden en düşük değeri döndürür.
Bicep'te min işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | tamsayı dizisi veya virgülle ayrılmış tamsayı listesi | En düşük değeri almak için koleksiyon. |
Dönüş değeri
En düşük değeri temsil eden bir int.
Örnek
Aşağıdaki örnekte, bir dizi ve tamsayı listesiyle min değerinin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"arrayToTest": {
"type": "array",
"defaultValue": [ 0, 3, 2, 5, 4 ]
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "int",
"value": "[min(parameters('arrayToTest'))]"
},
"intOutput": {
"type": "int",
"value": "[min(0,3,2,5,4)]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | Int | 0 |
intOutput | Int | 0 |
aralık
range(startIndex, count)
Başlangıç tamsayısından bir tamsayı dizisi oluşturur ve bir dizi öğe içerir.
Bicep'te range işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Startındex | Yes | int | Dizideki ilk tamsayı. startIndex ve count toplamının 2147483647 büyük olmaması gerekir. |
count | Yes | int | Dizideki tamsayı sayısı. 10000'e kadar negatif olmayan tamsayı olmalıdır. |
Dönüş değeri
Tamsayı dizisi.
Örnek
Aşağıdaki örnekte range işlevinin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"startingInt": {
"type": "int",
"defaultValue": 5
},
"numberOfElements": {
"type": "int",
"defaultValue": 3
}
},
"resources": [],
"outputs": {
"rangeOutput": {
"type": "array",
"value": "[range(parameters('startingInt'),parameters('numberOfElements'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
rangeOutput | Dizi | [5, 6, 7] |
skip
skip(originalValue, numberToSkip)
Dizide belirtilen sayıdan sonra tüm öğeleri içeren bir dizi döndürür veya dizede belirtilen sayıdan sonraki tüm karakterleri içeren bir dize döndürür.
Bicep'te skip işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Originalvalue | Yes | dizi veya dize | Atlanırken kullanılacak dizi veya dize. |
numberToSkip | Yes | int | Atlana öğe veya karakter sayısı. Bu değer 0 veya daha küçükse, değerdeki tüm öğeler veya karakterler döndürülür. Dizi veya dizenin uzunluğundan büyükse boş bir dizi veya dize döndürülür. |
Dönüş değeri
Bir dizi veya dize.
Örnek
Aşağıdaki örnek, dizideki belirtilen öğe sayısını ve bir dizedeki belirtilen karakter sayısını atlar.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToSkip": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToSkip": {
"type": "int",
"defaultValue": 4
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[skip(parameters('testArray'),parameters('elementsToSkip'))]"
},
"stringOutput": {
"type": "string",
"value": "[skip(parameters('testString'),parameters('charactersToSkip'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | Dizi | ["üç"] |
stringOutput | String | iki üç |
take
take(originalValue, numberToTake)
Bir dizi veya dize döndürür. Bir dizi, dizinin başından itibaren belirtilen sayıda öğeye sahiptir. Dize, dizenin başından itibaren belirtilen sayıda karaktere sahiptir.
Bicep'te take işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
Originalvalue | Yes | dizi veya dize | Öğeleri almak için dizi veya dize. |
numberToTake | Yes | int | Alınacak öğe veya karakter sayısı. Bu değer 0 veya daha küçükse boş bir dizi veya dize döndürülür. Verilen dizi veya dizenin uzunluğundan büyükse, dizideki veya dizedeki tüm öğeler döndürülür. |
Dönüş değeri
Bir dizi veya dize.
Örnek
Aşağıdaki örnek, diziden belirtilen sayıda öğeyi ve bir dizedeki karakterleri alır.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"testArray": {
"type": "array",
"defaultValue": [
"one",
"two",
"three"
]
},
"elementsToTake": {
"type": "int",
"defaultValue": 2
},
"testString": {
"type": "string",
"defaultValue": "one two three"
},
"charactersToTake": {
"type": "int",
"defaultValue": 2
}
},
"resources": [],
"outputs": {
"arrayOutput": {
"type": "array",
"value": "[take(parameters('testArray'),parameters('elementsToTake'))]"
},
"stringOutput": {
"type": "string",
"value": "[take(parameters('testString'),parameters('charactersToTake'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
arrayOutput | Dizi | ["bir", "iki"] |
stringOutput | String | on |
birleşim
union(arg1, arg2, arg3, ...)
Parametrelerdeki tüm öğeleri içeren tek bir dizi veya nesne döndürür. Diziler için, yinelenen değerler bir kez eklenir. Nesneler için yinelenen özellik adları yalnızca bir kez eklenir.
Bicep'te union işlevini kullanın.
Parametreler
Parametre | Zorunlu | Türü | Açıklama |
---|---|---|---|
arg1 | Yes | dizi veya nesne | Öğeleri birleştirmek için kullanılacak ilk değer. |
arg2 | Yes | dizi veya nesne | Öğeleri birleştirmek için kullanılacak ikinci değer. |
diğer bağımsız değişkenler | Hayır | dizi veya nesne | Öğeleri birleştirmek için kullanılacak diğer değerler. |
Dönüş değeri
Dizi veya nesne.
Açıklamalar
union işlevi, sonucun sırasını ve değerlerini belirlemek için parametrelerin sırasını kullanır.
Diziler için işlev, ilk parametredeki her öğede yinelenir ve henüz mevcut değilse sonucuna ekler. Ardından, ikinci parametre ve diğer parametreler için işlemi yineler. Bir değer zaten varsa, dizideki önceki yerleşimi korunur.
Nesneler için, ilk parametredeki özellik adları ve değerler sonuda eklenir. Daha sonraki parametreler için, sonuda yeni adlar eklenir. Sonraki bir parametre aynı ada sahip bir özelliğe sahipse, bu değer var olan değerin üzerine yazar. Özelliklerin sırası garanti değildir.
Union işlevi yalnızca üst düzey öğeleri birleştirmekle kalmaz, aynı zamanda iç içe yerleştirilmiş nesneleri yinelemeli olarak birleştirir. İç içe dizi değerleri birleştirilmemiş. Aşağıdaki bölümdeki ikinci örne bakın.
Örnek
Aşağıdaki örnekte diziler ve nesnelerle birleşim özelliğinin nasıl kullanılacağı gösterilmektedir.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstObject": {
"type": "object",
"defaultValue": {
"one": "a",
"two": "b",
"three": "c1"
}
},
"secondObject": {
"type": "object",
"defaultValue": {
"three": "c2",
"four": "d",
"five": "e"
}
},
"firstArray": {
"type": "array",
"defaultValue": [ "one", "two", "three" ]
},
"secondArray": {
"type": "array",
"defaultValue": [ "three", "four" ]
}
},
"resources": [
],
"outputs": {
"objectOutput": {
"type": "object",
"value": "[union(parameters('firstObject'), parameters('secondObject'))]"
},
"arrayOutput": {
"type": "array",
"value": "[union(parameters('firstArray'), parameters('secondArray'))]"
}
}
}
Yukarıdaki örnekten varsayılan değerleri içeren çıkış:
Adı | Tür | Değer |
---|---|---|
objectOutput | Object | {"one": "a", "two": "b", "three": "c2", "four": "d", "five": "e"} |
arrayOutput | Dizi | ["bir", "iki", "üç", "dört"] |
Aşağıdaki örnekte derin birleştirme özelliği gösterilmektedir:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"variables": {
"firstObject": {
"property": {
"one": "a",
"two": "b",
"three": "c1"
},
"nestedArray": [
1,
2
]
},
"secondObject": {
"property": {
"three": "c2",
"four": "d",
"five": "e"
},
"nestedArray": [
3,
4
]
},
"firstArray": [
[
"one",
"two"
],
[
"three"
]
],
"secondArray": [
[
"three"
],
[
"four",
"two"
]
]
},
"resources": [],
"outputs": {
"objectOutput": {
"type": "Object",
"value": "[union(variables('firstObject'), variables('secondObject'))]"
},
"arrayOutput": {
"type": "Array",
"value": "[union(variables('firstArray'), variables('secondArray'))]"
}
}
}
Yukarıdaki örnekten alınan çıkış:
Adı | Tür | Değer |
---|---|---|
objectOutput | Object | {"property":{"one":"a","two":"b","three":"c2","four":"d","five":"e"},"nestedArray":[3,4]} |
arrayOutput | Dizi | [["bir","iki"],["üç"],["dört","iki"]] |
İç içe diziler birleştirildiyse objectOutput.nestedArray değeri [1, 2, 3, 4] ve arrayOutput değeri [["one", "iki", "üç"], ["üç", "dört", "iki"]] olur.
Sonraki adımlar
- ARM şablonundaki bölümlerin açıklaması için bkz . ARM şablonlarının yapısını ve söz dizimini anlama.