اختبار التعبيرات النمطية
اختبار التعبيرات النمطية مع تمييز المطابقة في الوقت الفعلي وشرح الرموز وتوليد نصوص تجريبية
- سيظهر شرح النمط هنا.
كيفية الاستخدام
إدخال النمط
اكتب التعبير النمطي واختر العلامات المناسبة.
اختبار النص مباشرة
شاهد المطابقات المميزة ومجموعات الالتقاط في الوقت الفعلي.
التفسير والإنشاء
راجع شرح النمط وأنشئ سلاسل مثال.
الأسئلة الشائعة
نعم. يمكنك تفعيل علامات global و ignore case و multiline و dotAll و unicode و sticky أو إلغاء تفعيلها داخل الأداة.
يقرأ المُحلِّل النمطَ الذي أدخلته رمزاً برمز وينتج شرحاً بلغة مبسطة للمراسي (anchors) وأصناف المحارف والمجموعات والمحددات الكمية (quantifiers).
نعم. ينشئ مولد الأمثلة سلسلة تمثيلية بناءً على نمطك الحالي لتتمكن من التحقق سريعاً من أن النمط يفعل ما تقصده.
المحدد الكمي الجائع مثل .* يستهلك أكبر قدر ممكن ثم يتراجع؛ أما نظيره الكسول .*? فيتوقف عند أول مطابقة. على النص say "hi" bye، النمط "..*" يلتقط السطر بالكامل، بينما ".*?" يلتقط hi فقط. المطابقة الجائعة هي الافتراضية - أضف ? لجعل أي محدد كمي كسولاً.
الأقواس تلتقط: (\d{4})-(\d{2}) مقابل 2026-09-19 تعطي المجموعة 1 = 2026 والمجموعة 2 = 09، وفي نمط الاستبدال تعيد $1 استخدام النص الملتقط. المجموعات المسماة مثل (?<year>\d{4}) تكون أوضح في الأنماط المعقدة. يرقم JavaScript المجموعات حسب قوس الافتتاح الخاص بها بدءاً من 1 - المجموعة 0 هي دائماً المطابقة الكاملة.
أضف u كلما تضمن النمط أو النص محارف غير ASCII: فهي تجعل \w و \d يتبعان قواعد يونيكود، وتمكن هروب الخصائص مثل \p{L} و \p{Script=Arabic}، وتعامل الرموز التعبيرية (emoji) كمحرف واحد. بدون u، يمكن لزوج الاستبدال في UTF-16 (surrogate pair) أن يُقسم نصفين بمطابقة نقطة واحدة.
افتراضياً، يثبت ^ و $ السلسلة بأكملها ويتجاوز . فواصل الأسطر. علامة m (متعدد الأسطر) تجعل ^ و $ يطابقان عند كل حدود الأسطر بدلاً من ذلك، وعلامة s (dotAll) تسمح لـ . بعبور الأسطر الجديدة. وصفة شائعة لتحليل السجلات هي استخدام العلامتين معاً: /error.*timeout/gms.
يعمل بمحرك JavaScript داخل متصفحك، لذا يتبع دلالات التعبيرات النمطية في ECMAScript (ECMA-262) - نفس المحرك الذي يستخدمه String.prototype.match في JS الإنتاجية. انتبه للاختلافات عن PCRE أو Python: لا يدعم JavaScript \K ولا التكرار الذاتي (recursion)، ووظيفة lookbehind وصلت فقط في ES2018. قد تحتاج الأنماط المكتوبة لـ Perl أو PCRE إلى تعديلات طفيفة.
الأدوات ذات الصلة
المراجع المعتمدة
المصادر الأساسية وراء هذه الأداة - معايير ومواصفات رسمية، وليست ملخصات منقولة عن الغير.
MDN Web Docs - Regular Expressions
مرجع Mozilla لـ RegExp في JavaScript: الصياغة والأعلام ومجموعات الالتقاط المسماة.
ECMA-262 - ECMAScript Language Specification
فصل التعبيرات النمطية في مواصفة لغة ECMAScript الرسمية.
Regular expression - Wikipedia
تاريخ التعبيرات النمطية ومفاهيمها: من إرث Perl إلى المحركات الحديثة.