أساسيات بنية Regex
تعلّموا فئات الأحرف والمكررات والمثبتات والمجموعات في PCRE
أساسيات بنية Regex درس مجاني في PHP Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في PHP Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة PHP Academy 4 دروس في المجموع.
ما التعبير النمطي؟
التعبير النمطي (regex) هو نمط يصف مجموعة من السلاسل النصية. تستخدم PHP محرّك PCRE (التعبيرات النمطية المتوافقة مع Perl).
المحدِّدات
تُحاط أنماط regex في PHP بمحدِّدات — ويُستخدم / عادةً، لكن يمكنك أيضًا استخدام # إذا كان النمط يحتوي على شرط مائلة.
<?php
$pattern = '/hello/i'; // case-insensitive
$pattern2 = '#https?://#'; // # avoids escaping /فئات المحارف
طابق محرفًا واحدًا من مجموعة باستخدام الأقواس المربعة: [aeiou]، [a-z]، [^0-9] (منفية).
فئات المحارف المختصرة
اختصارات مضمّنة: \d رقم، و\w محرف كلمة، و\s مسافة بيضاء، ونظائرها المنفية \D و\W و\S.
المراسي
يطابق ^ بداية السلسلة، بينما يطابق $ نهايتها. استخدمهما للتحقّق من السلاسل الكاملة.
<?php
$pattern = '/^\d{5}$/'; // exactly 5 digitsمحدِّدات التكرار
حدّد عدد التكرارات: * (صفر أو أكثر)، و+ (واحد أو أكثر)، و? (صفر أو واحد)، و{3} (ثلاثة بالضبط)، و{2,5} (من 2 إلى 5).
المحرف الوصفي النقطة
يطابق . أي محرف باستثناء محرف السطر الجديد. استخدم \. بعد تهريبه لمطابقة نقطة حرفية.
مجموعات الالتقاط
تنشئ الأقواس مجموعة التقاط، ويصبح المحتوى المطابق متاحًا للاستخراج أو للإحالات الخلفية.
<?php
$pattern = '/([A-Z]{2})(\d{4})/'; // captures letters + digitsالمجموعات غير الملتقِطة
استخدم (?:...) للتجميع من دون التقاط — فهذا أسرع عندما لا تحتاج إلى قيمة المجموعة.
<?php
$pattern = '/(?:foo|bar)baz/'; // foobaz or barbazالتناوب
يعمل الخط العمودي | كعامل OR، إذ يطابق الجانب الأيسر أو الأيمن.
<?php
$pattern = '/^(cat|dog|bird)$/';العلامات/المعدِّلات
أضفها بعد المحدِّد الختامي: i (غير حسّاس لحالة الأحرف)، وm (متعدد الأسطر)، وs (تطابق النقطة محرف السطر الجديد)، وu (Unicode).
الطمع مقابل الكسل
تكون محدِّدات التكرار طمّاعة افتراضيًا، أي تطابق أكبر قدر ممكن. أضف ? لجعلها كسولة: يطابق .*? أقل قدر ممكن.
تحقّق سريعًا
أي اختصار يطابق أي رقم؟
الأسئلة الشائعة
هل درس «أساسيات بنية Regex» مجاني؟
نعم — نص درس «أساسيات بنية Regex» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة PHP Academy، انتقل إلى CoddyKit PRO. تتضمن دورة PHP Academy 4 دروس في المجموع.
ماذا ستتعلم في «أساسيات بنية Regex»؟
تعلّموا فئات الأحرف والمكررات والمثبتات والمجموعات في PCRE تتمرن على PHP Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ PHP Academy؟
لا تُشترط خبرة سابقة. PHP Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «أساسيات بنية Regex»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس PHP Academy هذا؟
نعم. كل درس في PHP Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- أساسيات بنية Regex
- المطابقة باستخدام preg_match
- استبدال النص باستخدام preg_replace
- التقسيم والأنماط العملية