عوامل مقارنة Bicep
تقارن عوامل المقارنة القيم وتعرض إما true
أو false
. لتشغيل الأمثلة، استخدم Azure CLI أو Azure PowerShell لنشر ملف Bicep.
عامل تشغيل | الاسم |
---|---|
>= |
أكبر من أو يساوي |
> |
أكبر من |
<= |
أقل من أو يساوي |
< |
أقل من |
== |
يساوي |
!= |
لا يساوي |
=~ |
غير حساس لحالة الأحرف |
!~ |
ليست متساوية مع حالة الأحرف |
أكبر من أو يساوي >=
operand1 >= operand2
يقيّم ما إذا كانت القيمة الأولى أكبر من القيمة الثانية أو مساوية لها.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
عدد صحيح، سلسلة | القيمة الأولى في المقارنة. |
operand2 |
عدد صحيح، سلسلة | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت القيمة الأولى أكبر من أو تساوي القيمة الثانية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
تتم مقارنة زوج من الأعداد الصحيحة وزوج من السلاسل.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
intGtE |
boolean | صحيح |
stringGtE |
boolean | صحيح |
أكبر من >
operand1 > operand2
يقيّم ما إذا كانت القيمة الأولى أكبر من القيمة الثانية.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
عدد صحيح، سلسلة | القيمة الأولى في المقارنة. |
operand2 |
عدد صحيح، سلسلة | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت القيمة الأولى أكبر من القيمة الثانية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
تتم مقارنة زوج من الأعداد الصحيحة وزوج من السلاسل.
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
الإخراج من المثال:
يجعل e في bend السلسلة الأولى أكبر.
Name | نوع | القيمة |
---|---|---|
intGt |
boolean | صحيح |
stringGt |
boolean | صحيح |
أقل من أو يساوي <=
operand1 <= operand2
يقيّم ما إذا كانت القيمة الأولى أقل من القيمة الثانية أو مساوية لها.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
عدد صحيح، سلسلة | القيمة الأولى في المقارنة. |
operand2 |
عدد صحيح، سلسلة | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت القيمة الأولى أقل من أو تساوي القيمة الثانية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
تتم مقارنة زوج من الأعداد الصحيحة وزوج من السلاسل.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
intLtE |
boolean | صحيح |
stringLtE |
boolean | صحيح |
أصغر من <
operand1 < operand2
يقيّم ما إذا كانت القيمة الأولى أقل من القيمة الثانية.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
عدد صحيح، سلسلة | القيمة الأولى في المقارنة. |
operand2 |
عدد صحيح، سلسلة | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت القيمة الأولى أقل من القيمة الثانية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
تتم مقارنة زوج من الأعداد الصحيحة وزوج من السلاسل.
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
الإخراج من المثال:
السلسلة هي true
لأن الأحرف الصغيرة أقل من الأحرف الكبيرة.
Name | نوع | القيمة |
---|---|---|
intLt |
boolean | صحيح |
stringLt |
boolean | صحيح |
يساوي ==
operand1 == operand2
يقيم ما إذا كانت القيم متساوية. المقارنة حساسة لحالة الأحرف.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
سلسلة، عدد صحيح، منطقية، مجموعة، عنصر | القيمة الأولى في المقارنة. |
operand2 |
سلسلة، عدد صحيح، منطقية، مجموعة، عنصر | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت المعاملات متساوية، يتم إرجاع true
. إذا كانت المعاملات مختلفة، يتم إرجاع false
.
مثال
تتم مقارنة أزواج من الأعداد الصحيحة والسلاسل والمنطقية.
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
الإخراج من المثال:
Name | نوع | القيمة | إشعار |
---|---|---|---|
intEqual |
boolean | صحيح | |
stringEqual |
boolean | true | والنتيجة هي false أن المقارنة حساسة لحالة الأحرف. |
boolEqual |
boolean | صحيح |
عند مقارنة المصفوفات، يجب أن تحتوي المصفوفتان على نفس العناصر والنظام. لا تحتاج المصفوفات إلى تعيينها لبعضها البعض.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
sameElements | منطقي | صحيح |
assignArray | منطقي | صحيح |
differentOrder | منطقي | true |
عند مقارنة العناصر، يجب أن تكون أسماء الخصائص والقيم هي نفسها. لا تحتاج الخصائص إلى التعريف بنفس الترتيب.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
sameObjects | منطقي | صحيح |
differentPropertyOrder | منطقي | صحيح |
assignObject | منطقي | صحيح |
differentValues | منطقي | true |
غير متساو !=
operand1 != operand2
يقيّم ما إذا كانت القيمتان غير متساويتين.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
سلسلة، عدد صحيح، منطقية، مجموعة، عنصر | القيمة الأولى في المقارنة. |
operand2 |
سلسلة، عدد صحيح، منطقية، مجموعة، عنصر | القيمة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت المعاملات غير متساوية، يتم إرجاع true
. إذا كانت المعاملات متساوية، يتم إرجاع false
.
مثال
تتم مقارنة أزواج من الأعداد الصحيحة والسلاسل والمنطقية.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
intNotEqual |
boolean | صحيح |
stringNotEqual |
boolean | صحيح |
boolNotEqual |
boolean | صحيح |
للحصول على المصفوفات والعناصر، راجع الأمثلة في يساوي.
متساوية غير حساسة لحالة الأحرف = ~
operand1 =~ operand2
يتجاهل حالة الأحرف لتحديد ما إذا كانت القيمتان متساويتين.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
سلسلة | السلسلة الأولى في المقارنة. |
operand2 |
سلسلة | السلسلة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت السلاسل متساوية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
يقارن السلاسل التي تستخدم أحرفًا مختلطة.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
strEqual1 |
boolean | صحيح |
strEqual2 |
boolean | true |
لا تتساوى مع حالة الأحرف! ~
operand1 !~ operand2
تجاهل الحالة لتحديد ما إذا كانت القيمتان غير متساويتين.
المعاملات
معامل | النوع | الوصف |
---|---|---|
operand1 |
سلسلة | السلسلة الأولى في المقارنة. |
operand2 |
سلسلة | السلسلة الثانية في المقارنة. |
قيمة الإرجاع
إذا كانت السلاسل غير متساوية، يتم إرجاع true
. خلاف ذلك، يتم إرجاع false
.
مثال
يقارن السلاسل التي تستخدم أحرفًا مختلطة.
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
الإخراج من المثال:
Name | نوع | القيمة |
---|---|---|
strNotEqual1 |
boolean | صحيح |
strNotEqual2 |
boolean | true |
الخطوات التالية
- لإنشاء ملف Bicep، راجع التشغيل السريع: إنشاء ملف Bicep باستخدام Visual Studio Code.
- للحصول على معلومات حول كيفية حل أخطاء نوع Bicep، راجع أي دالة لـ Bicep.
- لمقارنة بناء الجملة لـ Bicep وJSON، راجع مقارنة JSON وBicep للقوالب.
- للحصول على أمثلة لوظائف Bicep، راجع وظائف Bicep.