الانتقال إلى المحتوى الرئيسي
الوحدة 4 · الدرس 2 من 414/32 في الدورة~10 min
دروس الوحدة (2/4)

التناوب: `|`

الأنبوب | هو OR الخاص بالتعبير العادي: يتطابق النمط إذا **واحد من البدائل ** المباريات. أسبقيته منخفضة جدًا: | يفصل كل شيء إلى يساره ويمينه حتى المجموعة المحيطة أو بداية النمط.

Code
Pattern: cane|gatto|criceto
Sample:  Ho un cane, un gatto e un criceto.
               ^^^^     ^^^^^         ^^^^^^^

الأقواس تقود الأسبقية

بدون الأقواس، تمتد البدائل من بداية النمط إلى نهايته. تقريبا تريد دائمًا قصر OR على جزء من النمط: لفه مجموعة.

Code
Pattern   Significato (errato vs corretto)
^a|b$     "inizio + a" oppure "b + fine"           (probabilmente sbagliato)
^(a|b)$   "inizio + (a oppure b) + fine"           (probabilmente giusto)

حول الترتيب النموذجي للبدائل: ضع **الأكثر محددة/أطول منها أولاً **. يحاول المحرك من اليسار إلى اليمين ويتوقف عند أول ما يطابق: gat|gatto سيطابق دائمًا gat فقط.

الأسبقية وعزل البدائل

عامل التشغيل | له أسبقية منخفضة جدًا. إذا كتبت ^abc|def$، ​​فأنت تبحث عن "سلسلة تبدأ بـ abc أو سلسلة تنتهي بـ def". للبحث عن "بداية السلسلة متبوعة بـ abc أو def، متبوعة بنهاية السلسلة"، يجب عليك كتابة ^(abc|def)$.

جربه

تمرين#regex.m4.l2.e1
المحاولات: 0جارٍ التحميل…

ابحث عن كل تواجد للحيوانات الثلاثة `cane`، `gatto`، `criceto` في النص (بأي ترتيب).

جارٍ تحميل المحرر…
إظهار التلميح

يفصل الأنبوب بين البدائل. استخدم علامة g للقبض عليهم جميعًا.

الحل متاح بعد 3 من المحاولات

تمرين المراجعة

تمرين#regex.m4.l2.e2
المحاولات: 0جارٍ التحميل…

ابحث عن الكلمات `gennaio` أو `febbraio` ككلمات كاملة فقط (استخدم `\\b` لتجنب المطابقة داخل الكلمات الأطول). استخدم الأقواس للحد من التناوب.

جارٍ تحميل المحرر…
إظهار التلميح

\\b(gennaio|febbraio)\\b يثبت الاختيار على الكلمات بأكملها.

الحل متاح بعد 3 من المحاولات

التحدي الإضافي

تمرين#regex.m4.l2.e3
المحاولات: 0جارٍ التحميل…

ابحث عن أسماء الملفات التي تنتهي بالامتدادات `.jpg` أو `.png` أو `.gif`.

جارٍ تحميل المحرر…
إظهار التلميح

استخدم الأنبوب الموجود داخل المجموعة للتبديل بين الامتدادات.

الحل متاح بعد 3 من المحاولات