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

النطاقات داخل الفئات: `[a-z0-9]`

إن إدراج كل حرف واحدًا تلو الآخر أمر ممل. تقبل الفصول النطاقات مع الواصلة -: [a-z] يطابق أي حرف صغير، [0-9] رقم، [A-Z] حرف كبير.

Code
Pattern: [a-z]+
Sample:  Ciao Mondo 123
          ^^^  ^^^^

يستخدم النطاق ترتيب نقطة الكود (أساسًا ASCII للأحرف اللاتينية): a-z يعني "كل حرف من نقطة الرمز a إلى نقطة الرمز __ z"، إذن 26 حرفًا.

الجمع بين النطاقات

داخل فئة واحدة يمكنك مزج نطاقات متعددة وأحرف فردية:

Code
[a-zA-Z0-9_]   identical to \\w (in ASCII)
[a-fA-F0-9]    hexadecimal digits
[0-9.]         digits or the dot (for decimal numbers)

لا يهم الترتيب: [0-9a-z] و[a-z0-9] متطابقان.

النطاقات وترتيب أحرف ASCII

نطاقات مثل [a-z] تتبع بدقة ترتيب الأحرف في جدول ASCII. ستؤدي كتابة نطاق غير صالح، مثل [z-a]، إلى حدوث خطأ في تجميع regex. يجب وضع شرطة حرفية في البداية أو النهاية: [a-z-].

جربه

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

ابحث عن كل تسلسل سداسي عشري مكون من 6 أحرف (مثل رمز اللون #1a2b3c). الأرقام تبدأ من 0 إلى 9، والأحرف من a إلى f (أحرف كبيرة أو صغيرة).

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

أضف A-F إلى النطاق، أو استخدم علامة i.

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

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

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

ابحث عن رمز المنتج المكون من 3 أحرف كبيرة متبوعة بـ 4 أرقام (مثل ABC1234).

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

بالنسبة للأرقام، يمكنك استخدام \\d أو النطاق [0-9]: يتطلب هذا التمرين صريحًا [0-9].

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

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

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

ابحث عن الأحرف السداسية في النص (الأرقام من 0 إلى 9 والأحرف من A إلى F، بالأحرف الكبيرة والصغيرة).

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

الجمع بين ثلاثة نطاقات: 0-9، a-f، A-F.

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