Operátory porovnání Bicep
Relační operátory porovnávají hodnoty a vrací hodnotu true
nebo false
. Ke spuštění příkladů použijte Azure CLI nebo Azure PowerShell k nasazení souboru Bicep.
Operátor | Název |
---|---|
>= |
Větší než nebo rovno |
> |
Větší než |
<= |
Menší než nebo rovno |
< |
Méně než |
== |
Rovná se |
!= |
Nerovná se |
=~ |
Nerozlišují se velká a malá písmena |
!~ |
Nerozlišuje malá a velká písmena |
Větší než nebo rovno >=
operand1 >= operand2
Vyhodnotí, jestli je první hodnota větší nebo rovna druhé hodnotě.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
celé číslo, řetězec | První hodnota v porovnání. |
operand2 |
celé číslo, řetězec | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud je první hodnota větší nebo rovna druhé hodnotě, true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává se dvojice celých čísel a dvojice řetězců.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
intGtE |
boolean | true |
stringGtE |
boolean | true |
Větší než >
operand1 > operand2
Vyhodnotí, jestli je první hodnota větší než druhá hodnota.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
celé číslo, řetězec | První hodnota v porovnání. |
operand2 |
celé číslo, řetězec | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud je první hodnota větší než druhá hodnota, true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává se dvojice celých čísel a dvojice řetězců.
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
Výstup z příkladu:
E v ohybu vytvoří první řetězec větší.
Name | Typ | Hodnota |
---|---|---|
intGt |
boolean | true |
stringGt |
boolean | true |
Menší než nebo rovno <=
operand1 <= operand2
Vyhodnotí, jestli je první hodnota menší nebo rovna druhé hodnotě.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
celé číslo, řetězec | První hodnota v porovnání. |
operand2 |
celé číslo, řetězec | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud je první hodnota menší nebo rovna druhé hodnotě, true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává se dvojice celých čísel a dvojice řetězců.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
intLtE |
boolean | true |
stringLtE |
boolean | true |
Menší než <
operand1 < operand2
Vyhodnotí, jestli je první hodnota menší než druhá hodnota.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
celé číslo, řetězec | První hodnota v porovnání. |
operand2 |
celé číslo, řetězec | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud je první hodnota menší než druhá hodnota, true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává se dvojice celých čísel a dvojice řetězců.
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
Výstup z příkladu:
Řetězec je true
ten, že malá písmena jsou menší než velká písmena.
Name | Typ | Hodnota |
---|---|---|
intLt |
boolean | true |
stringLt |
boolean | true |
Rovná se ==
operand1 == operand2
Vyhodnotí, jestli jsou hodnoty stejné. V porovnání se rozlišují malá a velká písmena.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
string, integer, boolean, array, object | První hodnota v porovnání. |
operand2 |
string, integer, boolean, array, object | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud jsou operandy stejné, true
vrátí se. Pokud jsou operandy odlišné, false
vrátí se.
Příklad
Porovnává se dvojice celých čísel, řetězců a logických hodnot.
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
Výstup z příkladu:
Name | Typ | Hodnota | Poznámka: |
---|---|---|---|
intEqual |
boolean | true | |
stringEqual |
boolean | false (nepravda) | Výsledkem je false , že porovnání rozlišují malá a velká písmena. |
boolEqual |
boolean | true |
Při porovnávání polí musí mít obě pole stejné prvky a pořadí. Pole se nemusí vzájemně přiřazovat.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
sameElements | bool | true |
assignArray | bool | true |
differentOrder | bool | false (nepravda) |
Při porovnávání objektů musí být názvy vlastností a hodnoty stejné. Vlastnosti nemusí být definovány ve stejném pořadí.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
sameObjects | bool | true |
differentPropertyOrder | bool | true |
assignObject | bool | true |
differentValues | bool | false (nepravda) |
Nerovná se !=
operand1 != operand2
Vyhodnotí, jestli se dvě hodnoty nerovnají.
Operandy
Operand | Typ | Popis |
---|---|---|
operand1 |
string, integer, boolean, array, object | První hodnota v porovnání. |
operand2 |
string, integer, boolean, array, object | Druhá hodnota v porovnání. |
Vrácená hodnota
Pokud se operandy nerovnají , true
vrátí se. Pokud jsou operandy stejné, false
vrátí se.
Příklad
Porovnává se dvojice celých čísel, řetězců a logických hodnot.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
intNotEqual |
boolean | true |
stringNotEqual |
boolean | true |
boolNotEqual |
boolean | true |
Pro pole a objekty se podívejte na příklady, které jsou stejné.
Nerozlišují se stejná velká a malá písmena =~
operand1 =~ operand2
Ignoruje případ a určí, jestli jsou dvě hodnoty stejné.
Operandy
Operand | Typ | Description |
---|---|---|
operand1 |
string | První řetězec v porovnání. |
operand2 |
string | Druhý řetězec v porovnání. |
Vrácená hodnota
Pokud jsou řetězce stejné, true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává řetězce, které používají písmena se smíšenými písmeny.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
strEqual1 |
boolean | true |
strEqual2 |
boolean | false (nepravda) |
Nerozlišuje malá a velká písmena !~
operand1 !~ operand2
Ignoruje velikost písmen a určí, jestli se dvě hodnoty nerovnají.
Operandy
Operand | Typ | Description |
---|---|---|
operand1 |
string | První řetězec v porovnání. |
operand2 |
string | Druhý řetězec v porovnání. |
Vrácená hodnota
Pokud se řetězce nerovnají , true
vrátí se. false
V opačném případě se vrátí.
Příklad
Porovnává řetězce, které používají písmena se smíšenými písmeny.
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
Výstup z příkladu:
Name | Typ | Hodnota |
---|---|---|
strNotEqual1 |
boolean | true |
strNotEqual2 |
boolean | false (nepravda) |
Další kroky
- Pokud chcete vytvořit soubor Bicep, přečtěte si článek Rychlý start: Vytvoření souborů Bicep pomocí editoru Visual Studio Code.
- Informace o řešení chyb typu Bicep naleznete v tématu Libovolná funkce pro Bicep.
- Porovnání syntaxe pro Bicep a JSON najdete v tématu Porovnání json a Bicep pro šablony.
- Příklady funkcí Bicep najdete v tématu Funkce Bicep.