كيف تعمل
- أدخل نمطك وأعلامه.
- ألصق النص المراد اختباره.
- راجع التطابقات والمجموعات والشرح.
لماذا تستخدمها
- تمييز مباشر للتطابقات.
- مجموعات التقاط ومجموعات مُسمّاة.
- معاينة الاستبدال.
- حارس مهلة ضد التراجع الكارثي.
اختبار التعابير النمطية: الأعلام والمجموعات والأنماط الآمنة
اكتب واختبر وافهم
اكتب نمطًا وبعض نص الاختبار، فيُظلَّل كل تطابق أثناء الكتابة، مع قائمة بالتطابقات والنص الذي التقطته كل مجموعة. ويفكك تبويب شرح النمط إلى أجزائه بكلمات بسيطة، وهذه أسرع طريقة لفهم نمط منسوخ من مكان آخر. وتعطي أمثلة لمهام شائعة، كعناوين البريد الإلكتروني والروابط وعناوين IPv4 وتواريخ ISO والألوان الست عشرية وUUID وأرقام الهواتف، نقطة انطلاق.
الأعلام
| العلم | الاسم | الأثر |
|---|---|---|
g | global | إيجاد كل تطابق، لا الأول فقط |
i | ignore case | A وa سواء |
m | multiline | ^ و$ يطابقان بداية كل سطر ونهايته |
s | dot all | . يطابق فواصل الأسطر أيضًا |
u | unicode | يعامل الإيموجي والحروف الأخرى كحرف واحد؛ ويفعّل \p{L} وأخواتها |
v | unicode sets | مثل u، مع عمليات المجموعات داخل الفئات |
y | sticky | يطابق فقط حيث انتهى آخر تطابق تمامًا |
للنص بلغات أخرى، استخدم u مع خصائص Unicode: \p{L}+ يطابق كلمة بأي أبجدية، بينما يتوقف [a-zA-Z]+ عند أول حرف معلَّم، ولا يطابق العربية إطلاقًا.
المجموعات والاستبدالات
الأقواس تلتقط أجزاء من التطابق. سمّها بـ(?<year>\d{4}) وأشر إليها في الاستبدال بـ$<year>؛ والمجموعات المرقمة هي $1 و$2 وهكذا، والتطابق كله $&، وعلامة الدولار الحرفية $$. ويعرض تبويب استبدال النتيجة على نص الاختبار، وهذا يجعل تجربة البحث والاستبدال آمنة قبل تشغيلها على ملفات حقيقية. مثلًا، (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}) مع $<day>/$<month>/$<year> يحوّل 2026-10-12 إلى 12/10/2026.
أنماط تتجمد
بعض الأنماط يستغرق وقتًا يتضاعف أُسيًا مع نمو النص، وهي مشكلة تُسمى التراجع الكارثي. (a+)+$ على سطر طويل من حروف a يليه حرف آخر واحد هي الحالة الكلاسيكية: كل حرف إضافي يضاعف العمل. وفي خادم، يمكن استغلال نمط كهذا لشلّه بمدخل واحد مصنوع. يشغّل المختبر الأنماط في عامل خلفي ويوقف أي نمط يعمل أكثر من 1.5 ثانية، ويخبرك بدل أن يجمد التبويب. إن حدث ذلك فابحث عن تكرار متداخل مثل (x+)+ أو (x*)* وأعد كتابته.
المحركات تختلف
هذا محرك JavaScript في متصفحك. معظم الصياغة مشتركة مع Python وJava وPHP و.NET، لكن ليس كلها: النظر إلى الخلف، والمكمّمات الاستحواذية، وصياغة المجموعات المسماة، وفئات Unicode تختلف بينها. اختبر في اللغة التي ستستخدمها قبل الاعتماد على نمط في الإنتاج.
إذا حدث خطأ
- النمط يُظهر خطأ. قوس معقوف أو هلالي لم يُغلق، أو حرف خاص يحتاج شرطة مائلة عكسية، مثل
\.لنقطة حرفية. - لا يُعثر إلا على التطابق الأول. فعّل العلم g.
- `^` و`$` يطابقان مرة واحدة فقط. فعّل العلم m ليطابقا عند كل سطر.
أسئلة وأجوبة
أي نوع regex يُستخدم؟
JavaScript، كما ينفّذه متصفحك.
ماذا لو تجمّد نمطي؟
تعمل المطابقة في خيط عامل بحد 1.5 ثانية، فتبقى الصفحة متجاوبة وتحصل على تحذير.
هل يُرفع نصي؟
لا.