Sdílet prostřednictvím


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
< Menší než
== Rovná
!= 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é.

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
intEqual boolean true
stringEqual boolean true
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