مختبر التعبيرات النمطيةمصحح JavaScript RegExp مباشر
ar

AppHelp

اختبر تعبيرات JavaScript النمطية وصححها

شاهد التطابقات أثناء الكتابة، وافحص الفهارس والمجموعات، واختبر الحالات الإيجابية والسلبية، وعاين الاستبدال وانسخ كود JavaScript آمناً.

مساحة Regex في JavaScript

تعمل بمحرك JavaScript RegExp في المتصفح مع تمييز واختبارات واستبدال وكود مولد.

يعمل محلياً
الأعلام

معاينة التطابق المباشرة

/(?<user>[A-Z0-9._%+-]+)@(?<domain>[A-Z0-9.-]+\.[A-Z]{2,})/gi

2 تطابقاتصالح
Contact ada@example.com or support@apphelp.net. Invalid: person@example.
التطابق 1[8, 23) · 15 أحرف
ada@example.com
$1ada
$2example.com
userada
domainexample.com
التطابق 2[27, 46) · 19 أحرف
support@apphelp.net
$1support
$2apphelp.net
usersupport
domainapphelp.net
.

أي محرف عدا فاصل السطر

\d / \w / \s

فئات الرقم والكلمة والمسافة

* + ?

صفر أو أكثر، واحد أو أكثر، اختياري

{2,5}

تكرار من مرتين إلى خمس

^ $

مرساتا البداية والنهاية

(...) / (?:...)

مجموعات ملتقطة وغير ملتقطة

(?<name>...)

مجموعة ملتقطة باسم

(?=...) / (?!...)

استباق إيجابي وسلبي

مهام شائعة

  • مختبر regex
  • اختبار تعبير نمطي
  • javascript regex اونلاين
  • مصحح regex
  • تمييز تطابق regex
  • اختبار استبدال regex
  • مجموعات regex
  • اختبارات regex
  • بديل regex101
  • أداة regex مجانية

إجابة سريعة

أدخل نمط JavaScript، واختر الأعلام، والصق نصاً للاختبار. يجمع AppHelp النمط بمحرك RegExp في المتصفح، ويميز كل تطابق JavaScript، ويعرض نطاقات الفهارس والمجموعات، ويعاين رموز الاستبدال، ويشغل حالات إيجابية وسلبية سطراً بسطر، ويولد منشئاً مهرباً بأمان. قد تتصرف PCRE وPython وJava و.NET وRE2 بصورة مختلفة.

طريقة الاستخدام

  1. 1. أدخل نمط JavaScriptاكتب النمط دون الشرطتين المحيطتين. اختر الأعلام منفصلة لتجنب التكرار أو علم غير مدعوم بالخطأ.
  2. 2. افحص النتائج المميزةالصق نصاً ممثلاً وراجع كل تطابق ونطاقه نصف المفتوح ومجموعاته المرقمة والمسماة وعلامات الطول الصفري.
  3. 3. تحقق من الاستبدال والاختباراتاستخدم رموز JavaScript مثل $1 أو $<name>، ثم أضف حالة إيجابية أو سلبية متوقعة في كل سطر.
  4. 4. انسخ كود التنفيذافتح تبويب JavaScript وانسخ منشئ RegExp، ثم راجع الأداء وتوافق بيئة التشغيل قبل الإنتاج.

أمثلة

مجموعات بريد مسماة

الإدخال
(?<user>[A-Z0-9._%+-]+)@(?<domain>[A-Z0-9.-]+\.[A-Z]{2,}) / gi
الإخراج
يطابق نصاً شبيهاً بالبريد ويعرض مجموعتي user وdomain.

أجزاء تاريخ ISO

الإدخال
\b(?<year>\d{4})-(?<month>0[1-9]|1[0-2])-(?<day>0[1-9]|[12]\d|3[01])\b / g
الإخراج
يلتقط السنة والشهر واليوم من YYYY-MM-DD.

يتحقق من الشكل الرقمي فقط، لا من صحة تقويمية مثل 31 فبراير.

كلمة مكررة

الإدخال
\b(?<word>\w+)\s+\k<word>\b / gi
الإخراج
يجد كلمات متجاورة مكررة مثل is is.

حالات استخدام شائعة

  • تصحيح نمط تحقق قبل إضافته إلى نموذج
  • فحص المجموعات في المحللات ومعالجة السجلات والترحيل
  • معاينة البحث والاستبدال قبل تغيير نص أو كود
  • تحويل أمثلة الأخطاء إلى اختبارات إيجابية وسلبية
  • توليد منشئ JavaScript RegExp مهرب بأمان

حالات خاصة

  • من دون العلم الشامل g يعيد JavaScript أول تطابق فقط، ويؤثر الاستبدال عادةً في الظهور الأول وحده.
  • تحتاج التطابقات الشاملة بطول صفري إلى تحريك المؤشر؛ تميزها الأداة وتمنع الحلقة اللانهائية.
  • يمكن للتعبير التحقق من الشكل لكنه لا يثبت قاعدة عمل أو تاريخاً حقيقياً أو وصول رابط أو تسليم بريد.
  • قد تسبب المحددات الكمية المتداخلة والملتبسة backtracking كارثياً مع إدخال عدائي.
  • تختلف lookbehind وخصائص Unicode والأعلام ورموز الاستبدال بين JavaScript وPCRE وPython وJava و.NET وRE2.
  • تُحدد أطوال الإدخال وعدد النتائج المعروضة لحماية استجابة المتصفح.

الميزات

  • تحقق JavaScript RegExp وتمييز مباشر للتطابقات
  • نطاقات فهارس ومجموعات مرقمة ومسماة وعلامات للطول الصفري
  • مفاتيح صريحة للأعلام g وi وm وs وu وy وd
  • معاينة وفق قواعد استبدال JavaScript
  • حالات إيجابية وسلبية مع ملخص النجاح والفشل
  • قوالب للبريد والرابط وIPv4 وتاريخ ISO واللون والكلمة المكررة
  • منشئ JavaScript قابل للنسخ ومرجع سريع
  • معالجة محلية مع حد للنتائج حفاظاً على الاستجابة

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

أي محرك تعبيرات نمطية تستخدم الأداة؟
تستخدم JavaScript RegExp المضمن في المتصفح الحالي، وليس PCRE أو Python أو Java أو .NET أو RE2.
ماذا يفعل العلمان g وi؟
يتابع g جميع النتائج؛ ومن دونه تظهر الأولى فقط. يجعل i مطابقة الحروف غير حساسة للحالة.
هل يمكن فحص المجموعات المسماة والمرقمة؟
نعم. تعرض كل بطاقة $1 و$2 وما بعدها، والمجموعات المعرفة بصيغة (?<name>...).
كيف تعمل رموز الاستبدال؟
تتبع المعاينة JavaScript String.replace، بما في ذلك $1 للمجموعة المرقمة و$<name> للمسماة.
لماذا تظهر علامة تطابق بطول صفري؟
تطابق بعض الأنماط موضعاً لا أحرفاً. تجعل العلامة النتيجة مرئية وتتحرك الحلقة بأمان.
هل نجاح الاختبارات يثبت أمان النمط؟
لا. راجع أيضاً الإيجابيات والسلبية الكاذبة ودعم المحرك وأسوأ أداء محتمل.
هل يُرفع نص الاختبار؟
لا. يتم التجميع والمطابقة والاستبدال والاختبارات وتوليد الكود محلياً في المتصفح.