الأنماط والمطابقة
مطابقة الأنماط (طابق/عندما) هي بديل قوي لسلاسل إذا/وإلا الطويلة. تتيح لك مقارنة قيمة بعدة أنماط بطريقة واضحة ومقروءة.
التركيب الأساسي
sad
طابق (قيمة)
عندما نمط1:
# كود
عندما نمط2:
# كود
افتراضي:
# إذا لم يتطابق أي نمط
نهايةأنواع الأنماط
مطابقة القيم الحرفية
sad
متغير يوم = "الأحد"
طابق (يوم)
عندما "السبت":
اطبع_سطر("عطلة نهاية الأسبوع")
عندما "الأحد":
اطبع_سطر("عطلة نهاية الأسبوع")
عندما "الجمعة":
اطبع_سطر("يوم الجمعة المبارك")
افتراضي:
اطبع_سطر("يوم عمل")
نهايةمطابقة النطاقات
sad
متغير عمر = 25
طابق (عمر)
عندما 0..13:
اطبع_سطر("طفل")
عندما 13..20:
اطبع_سطر("مراهق")
عندما 20..60:
اطبع_سطر("بالغ")
افتراضي:
اطبع_سطر("كبير في السن")
نهايةمطابقة OR (بدائل متعددة)
sad
متغير درجة = "ب"
طابق (درجة)
عندما "أ" || "أ+":
اطبع_سطر("ممتاز!")
عندما "ب" || "ب+":
اطبع_سطر("جيد جداً")
عندما "ج":
اطبع_سطر("مقبول")
افتراضي:
اطبع_سطر("راسب")
نهايةربط المتغيرات
sad
طابق (قيمة)
عندما ن @ 1..100:
اطبع_سطر("رقم صغير: " + ن)
عندما ن:
اطبع_سطر("قيمة أخرى: " + ن)
نهايةالنمط الشامل (_ أو افتراضي)
sad
طابق (لون)
عندما "أحمر":
ارجع "#FF0000"
عندما "أخضر":
ارجع "#00FF00"
عندما _:
ارجع "#000000"
نهايةجدول أنواع الأنماط
| النمط | الوصف | مثال |
|---|---|---|
| حرفي | مطابقة قيمة محددة | عندما 42: |
| نطاق | مجال أرقام | عندما 1..10: |
| بدائل | OR بين أنماط | عندما 1 || 2: |
| ربط | ربط قيمة بمتغير | عندما ن @ 1..10: |
| شامل | أي قيمة | عندما _: أو افتراضي: |
نصيحة
استخدم طابق بدلاً من سلاسل إذا/وإلا الطويلة — الكود أوضح وأقل عرضة للأخطاء.
عندما دائرة د ارجع 3.14159 * د.نصف_القطر ** 2 نهاية
عندما مستطيل م ارجع م.ع * م.ط نهاية
افتراضي ارجع 0 نهاية
نهاية نهاية