Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln beskriver mallfunktionerna för att arbeta med matriser.
Information om hur du hämtar en matris med strängvärden avgränsade med ett värde finns i dela.
Dricks
              Bicep rekommenderas eftersom det erbjuder samma funktioner som ARM-mallar och syntaxen är enklare att använda. Mer information finns i array funktioner.
matris
array(convertToArray)
Konverterar värdet till en matris.
Använd funktionen i array Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| convertToArray | Ja | int, string, array eller object | Värdet som ska konverteras till en matris. | 
Returvärde
En matris.
Exempel
I följande exempel visas hur du array använder funktionen med olika typer:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| intOutput | Matris | [1] | 
| stringOutput | Matris | ["efgh"] | 
| objectOutput | Matris | [{"a": "b", "c": "d"}] | 
concat
concat(arg1, arg2, arg3, ...)
Kombinerar flera matriser och returnerar den sammanfogade matrisen, eller kombinerar flera strängvärden och returnerar den sammanfogade strängen.
Använd funktionen i concat Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris eller sträng | Den första matrisen eller strängen för sammanfogning. | 
| fler argument | Nej | matris eller sträng | Fler matriser eller strängar i sekventiell ordning för sammanfogning. | 
Den här funktionen kan ta valfritt antal argument och kan acceptera antingen strängar eller matriser för parametrarna. Du kan dock inte ange både matriser och strängar för parametrar. Matriser sammanfogas bara med andra matriser.
Returvärde
En sträng eller matris med sammanfogade värden.
Exempel
I följande exempel visas hur du kombinerar två matriser:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| retur | Matris | ["1-1", "1-2", "1-3", "2-1", "2-2", "2-3"] | 
I följande exempel visas hur du kombinerar två strängvärden och returnerar en sammanfogad sträng:
{
  "$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))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| concatOutput | Sträng | prefix-5yj4yjf5mbg72 | 
innehåller
contains(container, itemToFind)
Kontrollerar om en matris innehåller ett värde, ett objekt innehåller en nyckel eller om en sträng innehåller en delsträng. Strängjämförelsen är skiftlägeskänslig. Men när du testar om ett objekt innehåller en nyckel är jämförelsen skiftlägeskänslig.
Använd funktionen i contains Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| container | Ja | matris, objekt eller sträng | Värdet som innehåller det värde som ska hittas. | 
| itemToFind | Ja | sträng eller int | Värdet som ska hittas. | 
Returvärde
Sant om objektet hittas, annars Falskt.
Exempel
I följande exempel visas hur du använder contains med olika typer:
{
  "$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')]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| stringTrue | Bool | Sant | 
| stringFalse | Bool | Falsk | 
| objectTrue | Bool | Sant | 
| objectFalse | Bool | Falsk | 
| arrayTrue | Bool | Sant | 
| arrayFalse | Bool | Falsk | 
createArray
createArray(arg1, arg2, arg3, ...)
Skapar en matris från parametrarna.
I Bicep createArray stöds inte funktionen. Information om hur du skapar en matris finns i datatypen Bicep-matris.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| args args | Nej | Sträng, heltal, matris eller objekt | Värdena i matrisen. | 
Returvärde
En matris. När inga parametrar anges returneras en tom matris.
Exempel
I följande exempel visas hur du använder createArray med olika typer:
{
  "$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()]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| stringArray | Matris | ["a", "b", "c"] | 
| intArray | Matris | [1, 2, 3] | 
| objectArray | Matris | [{"one": "a", "two": "b", "three": "c"}] | 
| arrayArray | Matris | [["one", "two", "three"]] | 
| emptyArray | Matris | [] | 
tom
empty(itemToTest)
Avgör om en matris, ett objekt eller en sträng är tom.
Använd funktionen i empty Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| itemToTest | Ja | matris, objekt eller sträng | Värdet för att kontrollera om det är tomt. | 
Returvärde
Returnerar Sant om värdet är tomt, annars Falskt.
Exempel
I följande exempel kontrolleras om en matris, ett objekt och en sträng är tomma:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayEmpty | Bool | Sant | 
| objectEmpty | Bool | Sant | 
| stringEmpty | Bool | Sant | 
Första
first(arg1)
Returnerar det första elementet i matrisen eller det första tecknet i strängen.
Använd funktionen i first Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris eller sträng | Värdet för att hämta det första elementet eller tecknet. | 
Returvärde
Typen (sträng, int, matris eller objekt) för det första elementet i en matris eller det första tecknet i en sträng.
Exempel
I följande exempel visas hur du first använder funktionen med en matris och en sträng:
{
  "$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')]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Sträng | en | 
| stringOutput | Sträng | O | 
indexFromEnd
indexFromEnd(sourceArray, reverseIndex)
Returnerar ett element i matrisen genom att räkna bakåt från slutet. Detta är användbart när du vill referera till element som börjar från slutet av en lista i stället för början. Funktionen tryIndexFromEnd är en säker version av indexFromEnd.
I Bicep använder du operatorn för reserverad indexåtkomst.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| sourceArray | Ja | matris | Värdet för att hämta elementet genom att räkna bakåt från slutet. | 
| reverseIndex | Ja | integer | Det enbaserade indexet från slutet av matrisen. | 
Returvärde
Ett enda element från en matris som väljs genom att räkna bakåt från slutet av matrisen.
Exempel
I följande exempel visas hur du indexFromEnd använder funktionen:
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "variables": {
    "items": [
      "apple",
      "banana",
      "orange",
      "grape"
    ]
  },
  "resources": [],
  "outputs": {
    "secondToLast": {
      "type": "string",
      "value": "[indexFromEnd(variables('items'), 2)]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| secondToLast | Sträng | apelsin | 
indexOf
indexOf(arrayToSearch, itemToFind)
Returnerar ett heltal för indexet för den första förekomsten av ett objekt i en matris. Jämförelsen är skiftlägeskänslig för strängar.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arrayToSearch | Ja | matris | Matrisen som ska användas för att hitta indexet för det sökta objektet. | 
| itemToFind | Ja | int, string, array eller object | Objektet som ska hittas i matrisen. | 
Returvärde
Ett heltal som representerar det första indexet för objektet i matrisen. Indexet är nollbaserat. Om objektet inte hittas returneras -1.
Exempel
I följande exempel visas hur du använder indexOf funktionerna och lastIndexOf :
{
  "$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)]"
    }
  }
}
Utdata från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| index1 | heltal | 1 | 
| index2 | heltal | 0 | 
| index3 | heltal | 0 | 
| index4 | heltal | 2 | 
| index5 | heltal | 1 | 
| index6 | heltal | 0 | 
| index7 | heltal | 3 | 
| notFoundIndex1 | heltal | -1 | 
| notFoundIndex2 | heltal | -1 | 
vägkorsning
intersection(arg1, arg2, arg3, ...)
Returnerar en enskild matris eller ett objekt med de gemensamma elementen från parametrarna.
Använd funktionen i intersection Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris eller objekt | Det första värdet som ska användas för att hitta vanliga element. | 
| arg2 | Ja | matris eller objekt | Det andra värdet som ska användas för att hitta vanliga element. | 
| fler argument | Nej | matris eller objekt | Fler värden att använda för att hitta vanliga element. | 
Returvärde
En matris eller ett objekt med de gemensamma elementen.
Exempel
I följande exempel visas hur du använder intersection med matriser och objekt:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| objectOutput | Objekt | {"one": "a", "three": "c"} | 
| arrayOutput | Matris | ["två", "tre"] | 
senaste
last(arg1)
Returnerar det sista elementet i matrisen eller det sista tecknet i strängen.
Använd funktionen i last Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris eller sträng | Värdet för att hämta det sista elementet eller tecknet. | 
Returvärde
Typen (sträng, int, matris eller objekt) för det sista elementet i en matris eller det sista tecknet i en sträng.
Exempel
I följande exempel visas hur du last använder funktionen med en matris och en sträng:
{
  "$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')]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Sträng | tre | 
| stringOutput | Sträng | e | 
lastIndexOf
lastIndexOf(arrayToSearch, itemToFind)
Returnerar ett heltal för indexet för den senaste förekomsten av ett objekt i en matris. Jämförelsen är skiftlägeskänslig för strängar.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arrayToSearch | Ja | matris | Matrisen som ska användas för att hitta indexet för det sökta objektet. | 
| itemToFind | Ja | int, string, array eller object | Objektet som ska hittas i matrisen. | 
Returvärde
Ett heltal som representerar det sista indexet för objektet i matrisen. Indexet är nollbaserat. Om objektet inte hittas returneras -1.
Exempel
I följande exempel visas hur du använder indexOf funktionerna och lastIndexOf :
{
  "$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)]"
    }
  }
}
Utdata från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| index1 | heltal | 1 | 
| index2 | heltal | 0 | 
| index3 | heltal | 0 | 
| index4 | heltal | 2 | 
| index5 | heltal | 1 | 
| index6 | heltal | 0 | 
| index7 | heltal | 3 | 
| notFoundIndex1 | heltal | -1 | 
| notFoundIndex2 | heltal | -1 | 
längd
length(arg1)
Returnerar antalet element i en matris, tecken i en sträng eller rotnivåegenskaper i ett objekt.
Använd funktionen i length Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris, sträng eller objekt | Matrisen som ska användas för att hämta antalet element, strängen som ska användas för att hämta antalet tecken eller det objekt som ska användas för att hämta antalet egenskaper på rotnivå. | 
Returvärde
Ett int.
Exempel
I följande exempel visas hur du använder length med en matris och en sträng:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arraylängd | Int | 3 | 
| stringLength | Int | tretton | 
| objectLength | Int | 4 | 
Du kan använda den här funktionen med en matris för att ange antalet iterationer när du skapar resurser. I följande exempel refererar parametern siteNames till en matris med namn som ska användas när webbplatser skapas:
"copy": {
  "name": "websitescopy",
  "count": "[length(parameters('siteNames'))]"
}
Mer information om hur du använder den här funktionen med en matris finns i Resurs iteration i ARM-mallar.
maximalt
max(arg1)
Returnerar det maximala värdet från en matris med heltal eller en kommaavgränsad lista med heltal.
Använd funktionen i max Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris med heltal eller kommaavgränsad lista över heltal | Samlingen för att hämta det maximala värdet. | 
Returvärde
En int som representerar det maximala värdet.
Exempel
I följande exempel visas hur du använder max med en matris och en lista med heltal:
{
  "$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)]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Int | 5 | 
| intOutput | Int | 5 | 
minut
min(arg1)
Returnerar det minsta värdet från en matris med heltal eller en kommaavgränsad lista med heltal.
Använd funktionen i min Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris med heltal eller kommaavgränsad lista över heltal | Samlingen för att hämta minimivärdet. | 
Returvärde
En int som representerar minimivärdet.
Exempel
I följande exempel visas hur du använder min med en matris och en lista med heltal:
{
  "$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)]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Int | 0 | 
| intOutput | Int | 0 | 
intervall
range(startIndex, count)
Skapar en matris med heltal från ett start heltal och innehåller ett antal objekt.
Använd funktionen i range Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| startIndex | Ja | heltal | Det första heltalet i matrisen. Summan av startIndex och antal får inte vara större än 2147483647. | 
| antal | Ja | heltal | Antalet heltal i matrisen. Måste vara ett heltal som inte är negativt upp till 10000. | 
Returvärde
En matris med heltal.
Exempel
I följande exempel visas hur du range använder funktionen:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| rangeOutput | Matris | [5, 6, 7] | 
hoppa över
skip(originalValue, numberToSkip)
Returnerar en matris med alla element efter det angivna talet i matrisen eller returnerar en sträng med alla tecken efter det angivna talet i strängen.
Använd funktionen i skip Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| originalValue | Ja | matris eller sträng | Matrisen eller strängen som ska användas för att hoppa över. | 
| numberToSkip | Ja | heltal | Antalet element eller tecken som ska hoppa över. Om det här värdet är 0 eller mindre returneras alla element eller tecken i värdet. Om den är större än längden på matrisen eller strängen returneras en tom matris eller sträng. | 
Returvärde
En matris eller sträng.
Exempel
I följande exempel hoppar över det angivna antalet element i matrisen och det angivna antalet tecken i en sträng:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Matris | ["tre"] | 
| stringOutput | Sträng | två tre | 
ta
take(originalValue, numberToTake)
Returnerar en matris eller sträng. En matris har det angivna antalet element från början av matrisen. En sträng har det angivna antalet tecken från början av strängen.
Använd funktionen i take Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| originalValue | Ja | matris eller sträng | Matrisen eller strängen som elementen ska hämtas från. | 
| numberToTake | Ja | heltal | Antalet element eller tecken att ta. Om det här värdet är 0 eller mindre returneras en tom matris eller sträng. Om den är större än längden på den angivna matrisen eller strängen returneras alla element i matrisen eller strängen. | 
Returvärde
En matris eller sträng.
Exempel
I följande exempel används det angivna antalet element från en matris och tecken från en sträng:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| arrayOutput | Matris | ["en", "två"] | 
| stringOutput | Sträng | på | 
tryGet
tryGet(itemToTest, keyOrIndex)
              tryGet hjälper dig att undvika distributionsfel när du försöker komma åt en obefintlig egenskap eller ett index i ett objekt eller en matris. Om den angivna nyckeln eller indexet inte finns tryGet returnerar null i stället för att utlösa ett fel.
I Bicep använder du operatorn safe-dereference .
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| itemToTest | Ja | matris, objekt | Ett objekt eller en matris att titta på. | 
| keyOrIndex | Ja | sträng, heltal | En nyckel eller ett index som ska hämtas från matrisen eller objektet. Ett egenskapsnamn för objekt eller index för matriser. | 
Returvärde
Returnerar värdet vid nyckeln/indexet om det finns. Returnerar null om nyckeln/indexet saknas eller ligger utanför gränserna.
Exempel
I följande exempel kontrolleras om en matris, ett objekt och en sträng är tomma:
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "languageVersion": "2.0",
  "contentVersion": "1.0.0.0",
  "variables": {
    "users": {
      "name": "John Doe",
      "age": 30
    },
    "colors": [
      "red",
      "green"
    ]
  },
  "resources": [],
  "outputs": {
    "region": {
      "type": "string",
      "nullable": true,
      "value": "[tryGet(variables('users'), 'region')]"
    },
    "name": {
      "type": "string",
      "nullable": true,
      "value": "[tryGet(variables('users'), 'name')]"
    },
    "firstColor": {
      "type": "string",
      "nullable": true,
      "value": "[tryGet(variables('colors'), 0)]"
    }
  }
}
Utdata från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| region | Sträng | (NULL) | 
| namn | Sträng | John Berg | 
| firstColor | Sträng | Röd | 
tryIndexFromEnd
tryndexFromEnd(sourceArray, reverseIndex)
Funktionen tryIndexFromEnd är en säker version av indexFromEnd. Det hämtar ett värde från en matris genom att räkna bakåt från slutet utan att utlösa ett fel om indexet ligger utom räckhåll.
I Bicep använder du operatorn Reserverad indexåtkomstor och operatorn Säker dereference .
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| sourceArray | Ja | matris | Värdet för att hämta elementet genom att räkna bakåt från slutet. | 
| reverseIndex | Ja | integer | Det enbaserade indexet från slutet av matrisen. | 
Returvärde
Om indexet är giltigt (inom matrisgränsen) returnerar matriselementet vid det omvända indexet. Om indexet ligger utom intervallet returnerar null i stället för att utlösa ett fel.
Exempel
I följande exempel visas hur du tryIndexFromEnd använder funktionen:
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "variables": {
    "items": [
      "apple",
      "banana",
      "orange",
      "grape"
    ]
  },
  "resources": [],
  "outputs": {
    "secondToLast": {
      "type": "string",
      "value": "[tryIndexFromEnd(variables('items'), 2)]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| secondToLast | Sträng | apelsin | 
I följande exempel visas ett out-of-bound-scenario:
{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "languageVersion": "2.0",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "items": {
      "type": "array",
      "defaultValue": [
        "apple",
        "banana",
        "orange",
        "grape"
      ]
    }
  },
  "resources": {},
  "outputs": {
    "outOfBound": {
      "type": "string",
      "nullable": true,
      "value": "[tryIndexFromEnd(parameters('items'), 5)]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| outOfBound | Sträng | (null) | 
union
union(arg1, arg2, arg3, ...)
Returnerar en enskild matris eller ett objekt med alla element från parametrarna. För matriser inkluderas duplicerade värden en gång. För objekt inkluderas duplicerade egenskapsnamn bara en gång.
Använd funktionen i union Bicep.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning | 
|---|---|---|---|
| arg1 | Ja | matris eller objekt | Det första värdet som ska användas för att koppla element. | 
| arg2 | Ja | matris eller objekt | Det andra värdet som ska användas för att koppla element. | 
| fler argument | Nej | matris eller objekt | Fler värden att använda för att koppla element. | 
Returvärde
En matris eller ett objekt.
Kommentarer
              union function Använder sekvensen för parametrarna för att fastställa ordningen och värdena för resultatet.
För matriser itererar funktionen genom varje element i den första parametern och lägger till den i resultatet om den inte redan finns. Sedan upprepas processen för den andra parametern och eventuella fler parametrar. Om ett värde redan finns bevaras dess tidigare placering i matrisen.
För objekt läggs egenskapsnamn och värden från den första parametern till i resultatet. För senare parametrar läggs alla nya namn till i resultatet. Om en senare parameter har en egenskap med samma namn skriver det värdet över det befintliga värdet. Ordningen på egenskaperna är inte garanterad.
Funktionen union sammanfogar inte bara elementen på den översta nivån utan sammanfogar också rekursivt alla kapslade objekt i dem. Kapslade matrisvärden sammanfogas inte. Se det andra exemplet i följande avsnitt.
Exempel
I följande exempel visas hur du använder union med matriser och objekt:
{
  "$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'))]"
    }
  }
}
Utdata från standardvärdena från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| objectOutput | Objekt | {"one": "a", "two": "b", "three": "c2", "four": "d", "five": "e"} | 
| arrayOutput | Matris | ["en", "två", "tre", "fyra"] | 
I följande exempel visas funktionen för djupsammanslagning:
{
  "$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'))]"
    }
  }
}
Utdata från föregående exempel är:
| Namn | Type | Värde | 
|---|---|---|
| objectOutput | Objekt | {"property":{"one":"a","two":"b","three":"c2","four":"d","five":"e"},"nestedArray":[3,4]} | 
| arrayOutput | Matris | [["one","two"],["three"],["four","two"]] | 
Om kapslade matriser sammanfogades är värdet för objectOutput.nestedArray [1, 2, 3, 4], och värdet för arrayOutput är [["one", "two", "three"], ["three", "four", "two"]].
Nästa steg
- En beskrivning av avsnitten i en ARM-mall finns i Förstå strukturen och syntaxen för ARM-mallar.