Bicep-jämförelseoperatorer
Jämförelseoperatorerna jämför värden och returnerar antingen true
eller false
. Om du vill köra exemplen använder du Azure CLI eller Azure PowerShell för att distribuera en Bicep-fil.
Operator | Name |
---|---|
>= |
Större än eller lika med |
> |
Större än |
<= |
Mindre än eller lika med |
< |
Mindre än |
== |
Motsvarar |
!= |
Inte lika med |
=~ |
Lika skiftlägesokänsligt |
!~ |
Inte lika skiftlägesokänsligt |
Större än eller lika med >=
operand1 >= operand2
Utvärderar om det första värdet är större än eller lika med det andra värdet.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
heltal, sträng | Första värdet i jämförelsen. |
operand2 |
heltal, sträng | Andra värdet i jämförelsen. |
Returvärde
Om det första värdet är större än eller lika med det andra värdet true
returneras. Annars false
returneras.
Exempel
Ett par heltal och par med strängar jämförs.
param firstInt int = 10
param secondInt int = 5
param firstString string = 'A'
param secondString string = 'A'
output intGtE bool = firstInt >= secondInt
output stringGtE bool = firstString >= secondString
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
intGtE |
boolean | true |
stringGtE |
boolean | true |
Större än >
operand1 > operand2
Utvärderar om det första värdet är större än det andra värdet.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
heltal, sträng | Första värdet i jämförelsen. |
operand2 |
heltal, sträng | Andra värdet i jämförelsen. |
Returvärde
Om det första värdet är större än det andra värdet true
returneras. Annars false
returneras.
Exempel
Ett par heltal och par med strängar jämförs.
param firstInt int = 10
param secondInt int = 5
param firstString string = 'bend'
param secondString string = 'band'
output intGt bool = firstInt > secondInt
output stringGt bool = firstString > secondString
Utdata från exemplet:
E i böj gör den första strängen större.
Namn | Typ | Värde |
---|---|---|
intGt |
boolean | true |
stringGt |
boolean | true |
Mindre än eller lika med <=
operand1 <= operand2
Utvärderar om det första värdet är mindre än eller lika med det andra värdet.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
heltal, sträng | Första värdet i jämförelsen. |
operand2 |
heltal, sträng | Andra värdet i jämförelsen. |
Returvärde
Om det första värdet är mindre än eller lika med det andra värdet true
returneras. Annars false
returneras.
Exempel
Ett par heltal och par med strängar jämförs.
param firstInt int = 5
param secondInt int = 10
param firstString string = 'demo'
param secondString string = 'demo'
output intLtE bool = firstInt <= secondInt
output stringLtE bool = firstString <= secondString
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
intLtE |
boolean | true |
stringLtE |
boolean | true |
Mindre än <
operand1 < operand2
Utvärderar om det första värdet är mindre än det andra värdet.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
heltal, sträng | Första värdet i jämförelsen. |
operand2 |
heltal, sträng | Andra värdet i jämförelsen. |
Returvärde
Om det första värdet är mindre än det andra värdet true
returneras. Annars false
returneras.
Exempel
Ett par heltal och par med strängar jämförs.
param firstInt int = 5
param secondInt int = 10
param firstString string = 'demo'
param secondString string = 'Demo'
output intLt bool = firstInt < secondInt
output stringLt bool = firstString < secondString
Utdata från exemplet:
Strängen beror true
på att gemener är mindre än versaler.
Namn | Typ | Värde |
---|---|---|
intLt |
boolean | true |
stringLt |
boolean | true |
Lika med ==
operand1 == operand2
Utvärderar om värdena är lika med. Jämförelsen är skiftlägeskänslig.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
sträng, heltal, boolesk, matris, objekt | Första värdet i jämförelsen. |
operand2 |
sträng, heltal, boolesk, matris, objekt | Andra värdet i jämförelsen. |
Returvärde
Om operanderna är lika true
returneras. Om operanderna är olika false
returneras.
Exempel
Par med heltal, strängar och booleska värden jämförs.
param firstInt int = 5
param secondInt int = 5
param firstString string = 'demo'
param secondString string = 'Demo'
param firstBool bool = true
param secondBool bool = true
output intEqual bool = firstInt == secondInt
output stringEqual bool = firstString == secondString
output boolEqual bool = firstBool == secondBool
Utdata från exemplet:
Namn | Typ | Värde | Kommentar |
---|---|---|---|
intEqual |
boolean | true | |
stringEqual |
boolean | falskt | Resultatet beror false på att jämförelsen är skiftlägeskänslig. |
boolEqual |
boolean | true |
När du jämför matriser måste de två matriserna ha samma element och ordning. Matriserna behöver inte tilldelas till varandra.
var array1 = [
1
2
3
]
var array2 = [
1
2
3
]
var array3 = array2
var array4 = [
3
2
1
]
output sameElements bool = array1 == array2 // returns true because arrays are defined with same elements
output assignArray bool = array2 == array3 // returns true because one array was defined as equal to the other array
output differentOrder bool = array4 == array1 // returns false because order of elements is different
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
sameElements | bool | true |
assignArray | bool | true |
differentOrder | bool | falskt |
När du jämför objekt måste egenskapsnamnen och värdena vara desamma. Egenskaperna behöver inte definieras i samma ordning.
var object1 = {
prop1: 'val1'
prop2: 'val2'
}
var object2 = {
prop1: 'val1'
prop2: 'val2'
}
var object3 = {
prop2: 'val2'
prop1: 'val1'
}
var object4 = object3
var object5 = {
prop1: 'valX'
prop2: 'valY'
}
output sameObjects bool = object1 == object2 // returns true because both objects defined with same properties
output differentPropertyOrder bool = object3 == object2 // returns true because both objects have same properties even though order is different
output assignObject bool = object4 == object1 // returns true because one object was defined as equal to the other object
output differentValues bool = object5 == object1 // returns false because values are different
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
sameObjects | bool | true |
differentPropertyOrder | bool | true |
assignObject | bool | true |
differentValues | bool | falskt |
Inte lika med !=
operand1 != operand2
Utvärderar om två värden inte är lika med.
Operander
Operand | Typ | Beskrivning |
---|---|---|
operand1 |
sträng, heltal, boolesk, matris, objekt | Första värdet i jämförelsen. |
operand2 |
sträng, heltal, boolesk, matris, objekt | Andra värdet i jämförelsen. |
Returvärde
Om operanderna inte är lika true
returneras. Om operanderna är lika false
returneras.
Exempel
Par med heltal, strängar och booleska värden jämförs.
param firstInt int = 10
param secondInt int = 5
param firstString string = 'demo'
param secondString string = 'test'
param firstBool bool = false
param secondBool bool = true
output intNotEqual bool = firstInt != secondInt
output stringNotEqual bool = firstString != secondString
output boolNotEqual bool = firstBool != secondBool
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
intNotEqual |
boolean | true |
stringNotEqual |
boolean | true |
boolNotEqual |
boolean | true |
För matriser och objekt, se exempel i lika med.
Lika skiftlägesokänsligt =~
operand1 =~ operand2
Ignorerar skiftläge för att avgöra om de två värdena är lika med.
Operander
Operand | Typ | Description |
---|---|---|
operand1 |
sträng | Första strängen i jämförelsen. |
operand2 |
sträng | Andra strängen i jämförelsen. |
Returvärde
Om strängarna är lika true
returneras. Annars false
returneras.
Exempel
Jämför strängar som använder gemener.
param firstString string = 'demo'
param secondString string = 'DEMO'
param thirdString string = 'demo'
param fourthString string = 'TEST'
output strEqual1 bool = firstString =~ secondString
output strEqual2 bool = thirdString =~ fourthString
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
strEqual1 |
boolean | true |
strEqual2 |
boolean | falskt |
Inte lika skiftlägesokänsligt !~
operand1 !~ operand2
Ignorerar skiftläge för att avgöra om de två värdena inte är lika med.
Operander
Operand | Typ | Description |
---|---|---|
operand1 |
sträng | Första strängen i jämförelsen. |
operand2 |
sträng | Andra strängen i jämförelsen. |
Returvärde
Om strängarna inte är lika true
med returneras. Annars false
returneras.
Exempel
Jämför strängar som använder gemener.
param firstString string = 'demo'
param secondString string = 'TEST'
param thirdString string = 'demo'
param fourthString string = 'DeMo'
output strNotEqual1 bool = firstString !~ secondString
output strEqual2 bool = thirdString !~ fourthString
Utdata från exemplet:
Namn | Typ | Värde |
---|---|---|
strNotEqual1 |
boolean | true |
strNotEqual2 |
boolean | falskt |
Nästa steg
- Information om hur du skapar en Bicep-fil finns i Snabbstart: Skapa Bicep-filer med Visual Studio Code.
- Information om hur du löser Bicep-typfel finns i Alla funktioner för Bicep.
- Om du vill jämföra syntax för Bicep och JSON läser du Jämföra JSON och Bicep för mallar.
- Exempel på Bicep-funktioner finns i Bicep-funktioner.