🔎 مُختبر التعبيرات العادية — مطابقة حية، مجموعات، واستبدال
Toolio's Regex Tester هو أداة مجانية تمامًا تُستخدم فقط في المتصفح، تختبر التعبيرات العادية فورًا — بدون رفع ملفات، لا يتطلب حسابًا، ويمكن استخدامها بالكامل دون اتصال بالإنترنت.
التعبير العادي (regex) هو نمط للبحث عن النصوص والتطابق معها؛ مُختبر regex يظهر ما يتطابق معه النمط في مدخلات نموذجية.
مصمم للخصوصية. تعمل هذه الأداة بالكامل في متصفحك — لا يتم رفع أي شيء تدخله، ويمكنها العمل دون اتصال بالإنترنت.
حول
أدخل نمط تعبير عادي وسلسلة اختبار لترى كل مطابقة مُبرزت في الوقت الفعلي. تظهر مجموعات التقاط من المطابقة الأولى مع مراجع $1، $2 …، وعرض الاستبدال يظهر كيف تتحول سلسلة الاستبدال الخاصة بك المدخلة إلى المدخل. الأعلام — g، i، m، s، u — تُفعّل عبر مربعات اختيار بحيث لا تحتاج أبدًا إلى تذكر التركيب. وبما أن كل شيء يعمل داخل متصفحك دون أي خادم مشارك، فإن أنماطك ونصوصك تبقى خصوصية تمامًا.
كيف تستخدم
- اكتب تعبيرك العادي في حقل النمط.
- اختر الأعلام التي تحتاجها (g للاستخدام العالمي، i للاستخدام غير الحساس للحالة، m للاستخدام متعدد الخطوط، إلخ).
- لصق أو اكتب سلسلة الاختبار في منطقة سلسلة الاختبار — تُبرز المطابقات فورًا.
- اطلع على لوحة مجموعات التقاط لفحص قيم $1، $2 … من أول مطابقة.
- اكتب سلسلة استبدال في حقل الاستبدال لعرض النتيجة، ثم قم بنسخها.
الأسئلة الشائعة
- هل هذا مُختبر التعبيرات العادية مجاني؟
- نعم، مجاني تمامًا — لا حساب، لا اشتراك، لا حدود للاستخدام.
- هل يقوم بتحميل نمطي أو نصي إلى خادم؟
- لا. كل شيء يعمل محليًا في متصفحك باستخدام محرك JavaScript RegExp. لا يتم إرسال أي شيء إلى أي خادم.
- هل يعمل دون اتصال بالإنترنت؟
- نعم. بمجرد تحميل الصفحة، يمكنك الانفصال عن الإنترنت والقيام بالعملية. كما أن الأداة هي PWA، لذا يمكنك تثبيتها للاستخدام دون اتصال بالإنترنت.
- ما هي رايات النمط (flags) المدعومة؟
- تدعم الأداة رايات g (العامة)، i (غير الحساسة للحالة)، m (الخطوط متعددة)، s (النقطة الكاملة)، وu (الرموز التعبيرية) — وهي كلها رايات معيارية لمحرك RegExp في JavaScript.
- هل يمكنني استخدام مجموعات التقاط في سلسلة الاستبدال؟
- نعم. استخدم $1، $2، ... في حقل الاستبدال لاسترجاع مجموعات التقاط من نمطك — تمامًا كما هو الحال في دالة String.replace() في JavaScript.
- لماذا يتصرف نمطي بشكل مختلف هنا مقارنةً ببايثون أو PCRE؟
- يعمل هذا المُختبر على محرك التعبيرات العادية لـ JavaScript الخاص بالمتصفح، والذي يختلف بالفعل عن بايثون وPCRE: تستخدم المجموعات المُسمّاة تركيبًا مختلفًا، ولا توجد وضعية موسّعة تحتوي على تعليقات داخلية، ودعم التحقق من الوراء يعتمد على المتصفح. إذا كنت تكتب نمطًا لمشروع JavaScript، فإن هذا المحرك هو المحرك الصحيح تمامًا؛ أما لغات أخرى، فاعتبره قريبًا لكنه ليس متطابقًا تمامًا.
- لماذا يتجمد متصفحي عند إدخال مدخل طويل؟
- هذا تراجع كارثي على الأرجح. الأنماط ذات محددات الكمية المتداخلة مثل (a+)+ قد تستغرق وقتًا أطول أُسّيًا مع نمو الإدخال، لذا قد تعلّق سلسلة أطول قليلًا فقط المحرك. إنها خاصية النمط وليست خاصية المختبر. يشغّل هذا المختبر المطابقة في عامل خلفية ويوقفها بعد ثانية واحدة تقريبًا مع تحذير، لتبقى الصفحة متجاوبة - واكتشاف المشكلة هنا أفضل بكثير من اكتشافها في الإنتاج.
- هل هذه الأداة ترفع بياناتي؟
- لا. يعمل كل شيء مباشرة في متصفحك، لذا بياناتك لن تغادر جهازك أبداً — بل إنها تعمل دون اتصال بالإنترنت بمجرد تحميل الصفحة.