ForHosting KIT · أدوات المطورين

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

افحص النمط كما سينفذه متصفحك تمامًا: البحث عن hello في hello world يعطي تطابقًا واحدًا عند الموضع 0، مع المجموعات المرقمة والمسماة. انتقل إلى وضع الاستبدال لترى النتيجة قبل لمس بياناتك الحقيقية. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النمط
hello
النص
hello world
الأعلام
تحصل على
الكمية
1

هل تحتاج مختبر تعبيرات نمطية ECMAScript موثوقًا للأنماط والمجموعات والاستبدال؟ تستخدم هذه الأداة نفس محرك متصفحك: الأعلام g و i و m و s و u و y، ونتائج مطابقة بمجموعات مرقّمة ومسماة، وقوالب استبدال مع $$ و $& و $n و $<name>.

البحث: كل تطابق مع موضعه ومجموعاته

في وضع البحث يظهر كل تطابق مع النص الذي وُجد، والموضع الذي يبدأ عنده محسوبًا كما في نصوص JavaScript، والمجموعات المرقمة بترتيب فتح أقواسها، والمجموعات المسماة إن أعلنها النمط. بدون العلم g تحصل على تطابق واحد على الأكثر، ومع g يتقدم المحرك من تطابق إلى آخر دون تداخل. وتُتجاوز التطابقات الفارغة بأمان، فلا يدور النمط في حلقة لا تنتهي. ومع العلم u تعامل النقطة وفئات الحروف الرمز التعبيري حرفًا واحدًا لا وحدتين.

الاستبدال: قالب الاستبدال

في وضع الاستبدال يُطبَّق جدول الاستبدال المعتاد في JavaScript: تصبح $$ علامة دولار حرفية، وتُدرج $& التطابق كاملًا، وتُدرج علامة الدولار مع رقم مجموعة حتى 99 تلك المجموعة، وتُدرج $<name> مجموعة مسماة. وإذا لم يطابق شيء تكون النتيجة هي النص الأصلي دون تغيير ويبقى العدد صفرًا. ويساوي هذا العدد ما يعطيه وضع البحث للنمط والنص نفسيهما، فتعرف كم استبدالًا سيحدث قبل تطبيقه.

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

في وضع المطابقة تسرد الاستجابة كل نتيجة مع المطابقة الكاملة وفهرس UTF-16 للبداية والمجموعات المرقّمة والمسماة الاختيارية. بدون العلم العام تحصل على مطابقة واحدة على الأكثر؛ مع g تُمرّ المطابقات غير المتداخلة؛ والعلم sticky y يلزم المطابقة عند الفهرس الحالي ولا يتخطى المسافات.

قوالب الاستبدال

بلا مطابقة تكون النتيجة النص الأصلي وcount صفرًا. استخدم نفس النمط والأعلام التي تلصقها في المحرر لمواءمة العميل والخادم.

الأعلام والأنماط غير الصالحة والحدود

تُقبل فقط g و i و m و s و u و y دون تكرار. حدود الطول تحمي التبويب: نمط حتى 1000 حرف ونص حتى 100000 وعلى الأكثر 10000 مطابقة لكل استدعاء. مع u تعمل النقطة على نقاط الترميز؛ وبدونها قد يشغل الرمز التعبيري وحدتَي UTF-16.

فحص الأنماط قبل الإطلاق

الصق سجلات أو مدخلات نماذج وتأكد من المجموعات والفهارس قبل وضع التعبير في الإنتاج.

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

اعرض المطابقة والاستبدال بنفس قواعد ECMAScript المستخدمة في JavaScript.

حالات sticky و global

افحص تفاعل y و g مع المسافات والمطابقات الفارغة دون تخمين غرائب المتصفح.

ما نكهة التعبير النمطي المستخدمة؟

RegExp من ECMAScript، نفس محرك المتصفحات الحديثة وNode. ليست PCRE ولا Python re.

ما الأعلام المدعومة؟

g و i و m و s و u و y.

ما حدود الحجم؟

النمط ≤ 1000 حرف، النص ≤ 100000 حرف، وعلى الأكثر 10000 مطابقة لكل طلب.

لماذا أحصل على تطابق واحد فقط؟

بدون العلم g يتوقف البحث عند أول تطابق، كما في البحث العادي في JavaScript. وعند إضافة g يمر المختبر على كل التطابقات في النص دون تداخل بينها.

كيف أستخدم مجموعة ملتقطة في نص الاستبدال؟

استخدم $& للتطابق الكامل، وعلامة الدولار متبوعة برقم المجموعة للمجموعة المرقمة، و$<name> للمجموعة المسماة. واكتب $$ عندما تحتاج إلى علامة دولار حرفية.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/dev/regex-tester

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/dev/regex-tester \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"pattern":"\\w+","text":"hello world"}'
{
  "pattern": "\\w+",
  "text": "hello world"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.regex_tester",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

max_pattern_chars1000
max_text_chars100000
max_matches10000
HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

تشترك الأداة المجانية وواجهة API في نواة حتمية واحدة، فلا تنحرف الأتمتة عما عاينته.

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

المجموعة الاختيارية التي لا تشارك تُعاد كـ null في JSON لتبقى الخانات ثابتة للسكربتات.

قوالب الاستبدال

يتبع وضع الاستبدال جدول ECMAScript: يصبح $$ دولارًا حرفيًا، و$& هي المطابقة الكاملة، و$1–$99 التقاطات مرقّمة إن وُجدت، و$<name> يدرج التقاطًا مسمّى.

الأعلام والأنماط غير الصالحة والحدود

النمط غير الصالح لا يرمي استثناءً خامًا من المحرك: تحصل على invalid_input مكتوب برسالة واضحة.

معاينة الاستبدالات

جرّب القوالب على عينة قصيرة ثم استدعِ API بنفس العقد من خط أنابيب.

هل مختبر التعبيرات النمطية عبر الإنترنت مجاني؟

نعم. أداة المتصفح تعمل محليًا بلا رسوم. طلبات API تستخدم رصيد KIT المدفوع مسبقًا بسعر الأساس المنشور $0.002؛ والمهام الفاشلة لا تُحاسب.

كيف تُعاد المجموعات الاختيارية؟

كـ null في مصفوفة groups (وفي named عند الاقتضاء)، بلا حذف وبلا undefined في JSON.

ماذا يحدث إذا كان النمط غير صالح؟

تحصل على invalid_input برسالة تبدأ بـ Regex inválida، لا SyntaxError بلا نوع.

اطّلع على توثيق KIT الكامل ←