أداة اختبار التعبيرات النمطية

اختبر التعبيرات العادية JavaScript مقابل عينة نصية، مباشرة في متصفحك.

النمط
العلامات
النص التجريبي
المطابقات المميزة
أدخل نمطًا لاختباره.

يتم اختبار النمط والنص الخاص بك في متصفحك. لم يتم تحميل أي شيء إلى BroBroGo.

الأسئلة الشائعة

هل من الآمن لصق النص الخاص بي هنا؟

نعم. تتم المطابقة بالكامل في متصفحك، ولا يتم إرسال أي شيء إلى BroBroGo.

ماذا تعني أعلام g/i/m/s؟

يعثر g على جميع المطابقات بدل الأولى فقط. ويتجاهل i حالة الأحرف. ويجعل m الرمزين ^ و$ يطابقان بداية كل سطر ونهايته بدل السلسلة كاملة فقط. ويتيح s للنقطة . مطابقة فواصل الأسطر أيضًا.

لماذا قيل لي أن النمط الخاص بي يستغرق وقتًا طويلاً؟

تؤدي بعض الأنماط إلى تراجع كارثي، حيث يحاول المحرك عددًا هائلاً من المجموعات قبل الاستسلام، مما قد يؤدي إلى تجميد علامة تبويب المتصفح. تقوم هذه الأداة بإلغاء المطابقة بعد ثانيتين إذا حدث ذلك، وبالتالي لا يتم قفل الصفحة نفسها أبدًا. حاول تبسيط التكرار المتداخل مثل (a+)+.

اختبار التعبيرات النمطية لـ JavaScript

تُستخدم التعبيرات النمطية (Regular Expressions أو Regex) في تطوير الويب لتحديد أنماط معينة داخل النصوص، والتحقق من صحة البيانات، واستخراج الأجزاء المطلوبة من السلاسل النصية. تتيح هذه الأداة اختبار التعبيرات النمطية الخاصة بلغة JavaScript مباشرة في متصفح الويب، حيث توفر رؤية فورية لكيفية تفاعل النمط مع النصوص التجريبية وتحديد المطابقات ومجموعات الالتقاط بدقة.


مدخلات الأداة وإعدادات المطابقة

تتطلب عملية الاختبار إدخال قيمتين أساسيتين وتحديد العلامات التي تحكم سلوك محرك البحث:

  • النمط: التعبير النمطي الذي ترغب في اختباره. على سبيل المثال، يمكن استخدام النمط الافتراضي \d+ للبحث عن الأرقام.
  • النص التجريبي: النص الكامل الذي سيقوم المحرك بالبحث فيه لتطبيق النمط واكتشاف المطابقات. يظهر في هذا الحقل افتراضيًا النص الإرشادي "الصق أو اكتب نصًا لاختبار النمط الخاص بك".

تؤثر العلامات المحددة بشكل مباشر على آلية عمل التعبير النمطي:

  • g (عام): عند تفعيل هذه العلامة، يبحث المحرك عن جميع المطابقات الممكنة داخل النص. في حال عدم تفعيلها، يتوقف المحرك فور العثور على المطابقة الأولى فقط.
  • i (غير حساس لحالة الأحرف): تتجاهل عملية البحث الفروق بين الحروف الكبيرة والصغيرة.
  • m (متعدد الأسطر): تغير سلوك الرمزين ^ و $ ليطابقا بداية ونهاية كل سطر فردي داخل النص، بدلاً من مطابقة بداية ونهاية السلسلة النصية الكاملة فقط.
  • s (النقطة تتطابق مع السطر الجديد): تسمح للرمز . بمطابقة محارف السطر الجديد بالإضافة إلى المحارف الأخرى.

مخرجات الاختبار ومجموعات الالتقاط

عند إدخال نمط صالح ونص تجريبي، تعرض الأداة النتائج فورًا عبر عدة أقسام:

  1. المطابقات المميزة: يظهر النص التجريبي مع تظليل بصري لكل الأجزاء التي تطابقت مع النمط.
  2. التطابقات: قائمة تفصيلية تعرض كل نتيجة تم العثور عليها بشكل منفصل.
  3. المجموعة {n}: إذا كان النمط يحتوي على أقواس التقاط، تعرض الأداة الأجزاء المستخرجة لكل مجموعة فرعية داخل كل مطابقة.
  4. المطابقات: {count}: عداد يوضح إجمالي عدد المطابقات التي تم العثور عليها في النص.
  5. الأحرف: إحصائية توضح عدد المحارف.

قواعد المعالجة والحالات الاستثنائية

تخضع عملية المطابقة لمجموعة من القواعد التقنية والحدود التي تضمن استقرار الأداة ودقة النتائج:

  • غياب المطابقات: إذا لم يتوافق النمط مع أي جزء من النص، تظهر رسالة "لا توجد مطابقات.".
  • الأخطاء الصياغية: في حال وجود خطأ في كتابة التعبير النمطي، تعرض الأداة رسالة "تعبير نمطي غير صالح.".
  • حدود التكرار: عند تفعيل العلامة "g"، تعرض الأداة حدًا أقصى يصل إلى 1,000 مطابقة، وتكتفي بعرض 100 بطاقة مطابقة كحد أقصى في واجهة المستخدم. وإذا تجاوزت النتائج هذه الحدود، تظهر ملحوظة "يتم عرض أول {max}.".
  • مسح البيانات: يمكن إعادة تعيين الأداة بالكامل بالنقر على زر "مسح"، لتظهر رسالة "تم المسح.".

الأداء والتراجع الكارثي

تصمم التعبيرات النمطية أحيانًا بطرق تؤدي إلى استهلاك مفرط لموارد المعالج، وهو ما يُعرف تقنيًا بالتراجع الكارثي (Catastrophic Backtracking). يحدث هذا عندما يحتوي النمط على تكرارات متداخلة ومبهمة تجعل المحرك يجرب عددًا هائلاً من الاحتمالات قبل تحديد عدم المطابقة.

لتفادي تجميد المتصفح، تضع الأداة حدًا زمنيًا أقصى لعملية المعالجة. إذا استغرقت المطابقة أكثر من ثانيتين، يتم إلغاء العملية تلقائيًا وتظهر رسالة التحذير التالية: "يستغرق تشغيل هذا النمط وقتًا طويلًا جدًا، وقد يكون بطيئًا بصورة كارثية. حاول تبسيطه.".


خصوصية البيانات ومعالجتها

تتم جميع عمليات معالجة النصوص واختبار الأنماط محليًا داخل متصفح الويب الخاص بك. لا يتم رفع النمط أو النص التجريبي إلى خوادم BroBroGo نهائيًا، مما يضمن بقاء بياناتك داخل جهازك أثناء استخدام الأداة.


الأسئلة الشائعة

هل من الآمن لصق النص الخاص بي هنا؟
نعم. تتم المطابقة بالكامل في متصفحك، ولا يتم إرسال أي شيء إلى BroBroGo.

ماذا تعني أعلام g/i/m/s؟
يعثر g على جميع المطابقات بدل الأولى فقط. ويتجاهل i حالة الأحرف. ويجعل m الرمزين ^ و$ يطابقان بداية كل سطر ونهايته بدل السلسلة كاملة فقط. ويتيح s للنقطة. مطابقة فواصل الأسطر أيضًا.

لماذا قيل لي أن النمط الخاص بي يستغرق وقتًا طويلاً؟
تؤدي بعض الأنماط إلى تراجع كارثي، حيث يحاول المحرك عددًا هائلاً من المجموعات قبل الاستسلام، مما قد يؤدي إلى تجميد علامة تبويب المتصفح. تقوم هذه الأداة بإلغاء المطابقة بعد ثانيتين إذا حدث ذلك، وبالتالي لا يتم قفل الصفحة نفسها أبدًا. حاول تبسيط التكرار المتداخل مثل (a+)+.