تخطَّ إلى المحتوى
ToolMug

أنماط Regex الشائعة

تعابير نمطية جاهزة للاستخدام في عمليات التحقق اليومية — البريد الإلكتروني، الرابط، النطاق، عناوين IPv4 وMAC، الأعداد الصحيحة والعشرية والمبالغ المالية، التواريخ والأوقات، أسماء المستخدمين، كلمات المرور القوية، ألوان hex، UUID والإصدارات الدلالية، إضافة إلى تنسيقات الهاتف والهوية والرمز البريدي الصينية. يأتي كل نمط مع وصف وأمثلة مطابقة وغير مطابقة؛ انسخه بنقرة واحدة أو اكتب في المربع لاختباره.

يعمل في متصفحك — لا يُرفع أي شيء تُدخله

  • عنوان بريد إلكتروني

    تنسيق بريد شائع مع النقاط وعلامات الجمع والنطاقات متعددة المستويات

    /^[\w.+-]+@[\w-]+(\.[\w-]+)+$/

    ✓ name@example.com a.b+tag@mail.co.uk✗ name@ @example.com a b@example.com

  • URL (http/https)

    يبدأ بـ http:// أو https:// ولا يحتوي مسافات

    /^https?:\/\/[^\s/$.?#][^\s]*$/i

    ✓ https://example.com/path?q=1 http://localhost:8080✗ ftp://example.com example.com https:// bad

  • اسم نطاق

    نطاق متعدد المستويات من أحرف وأرقام وشرطات

    /^(?=.{1,253}$)(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,63}$/

    ✓ example.com sub.example.co.uk✗ -bad.com example exa_mple.com

  • عنوان IPv4

    أربعة أرقام من 0 إلى 255 دون أصفار بادئة

    /^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/

    ✓ 192.168.1.1 8.8.8.8 255.255.255.0✗ 256.1.1.1 1.2.3 01.2.3.4

  • عنوان MAC

    ستة أزواج من أرقام سداسية عشرية تفصلها نقطتان أو شرطات

    /^(?:[0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}$/

    ✓ 00:1A:2B:3C:4D:5E 00-1a-2b-3c-4d-5e✗ 001A2B3C4D5E 00:1A:2B:3C:4D

  • رقم جوال صيني

    11 رقمًا تبدأ من 13 إلى 19 دون +86

    /^1[3-9]\d{9}$/

    ✓ 13800138000 19912345678✗ 12345678901 1380013800 +8613800138000

  • هاتف أرضي صيني

    رمز منطقة مع رقم، وقد تفصل بينهما شرطة

    /^0\d{2,3}-?\d{7,8}$/

    ✓ 010-12345678 0755-1234567 02112345678✗ 12345678 010-123

  • بطاقة هوية صينية (18 خانة)

    يفحص طول رمز المنطقة وتاريخ الميلاد؛ وقد تكون الخانة الأخيرة X. لا يتحقق من رقم التحقق.

    /^[1-9]\d{5}(?:18|19|20)\d{2}(?:0[1-9]|1[0-2])(?:0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/

    ✓ 11010519491231002X 440308199901010012✗ 11010519491331002X 1101051949123100

  • رمز بريدي صيني

    ست خانات

    /^\d{6}$/

    ✓ 100000 010000✗ 10000 1000000

  • لوحة مركبة صينية

    7 أحرف للوحات العادية و8 لمركبات الطاقة الجديدة

    /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼][A-HJ-NP-Z][A-HJ-NP-Z0-9]{4,5}[A-HJ-NP-Z0-9挂学警港澳]$/

    ✓ 京A12345 粤BD12345 沪A1234学✗ 京12345 京AI2345

  • أحرف صينية فقط

    رموز CJK الشائعة فقط

    /^[\u4e00-\u9fa5]+$/

    ✓ 中文 正则表达式✗ 中文abc

  • رقم QQ

    5–11 رقمًا ولا يبدأ بـ 0

    /^[1-9]\d{4,10}$/

    ✓ 10001 123456789✗ 01234 1234

  • رقم بطاقة مصرفية

    16–19 رقمًا؛ وتتطلب الصلاحية أيضًا فحص Luhn

    /^[1-9]\d{15,18}$/

    ✓ 6222021234567890123 4111111111111111✗ 0222021234567890 622202123456

  • عدد صحيح

    قد يكون سالبًا

    /^-?\d+$/

    ✓ 0 -42 12345✗ 1.5 1e3

  • عدد صحيح موجب

    دون صفر بادئ

    /^[1-9]\d*$/

    ✓ 1 100✗ 0 01 -1

  • عدد عشري

    قد يكون سالبًا مع أرقام على جانبي الفاصلة

    /^-?\d+(?:\.\d+)?$/

    ✓ 3.14 -0.5 42✗ .5 1. 1,000

  • مبلغ مالي

    غير سالب مع منزلتين عشريتين كحد أقصى

    /^(?:0|[1-9]\d*)(?:\.\d{1,2})?$/

    ✓ 0 99.9 1234.56✗ 01.00 1.234 -1

  • تاريخ (YYYY-MM-DD)

    الشهر 01–12 واليوم 01–31؛ لا تُفحص أطوال الأشهر

    /^\d{4}-(?:0[1-9]|1[0-2])-(?:0[1-9]|[12]\d|3[01])$/

    ✓ 2026-09-26 1999-12-31✗ 2026-13-01 2026-9-26 26-09-2026

  • وقت (HH:MM[:SS])

    ساعة من 24، والثواني اختيارية

    /^(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d)?$/

    ✓ 09:30 23:59:59✗ 24:00 9:30 12:60

  • اسم مستخدم

    يبدأ بحرف؛ 4–16 حرفًا أو رقمًا أو شرطة سفلية

    /^[a-zA-Z][a-zA-Z0-9_]{3,15}$/

    ✓ alice_01 Bob2026✗ 1alice ab bad-name

  • كلمة مرور قوية

    8 أحرف على الأقل مع أحرف كبيرة وصغيرة ورقم ورمز

    /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[^\w\s]).{8,}$/

    ✓ Passw0rd! Aa1@aaaa✗ password Password1 Aa1@

  • لون سداسي عشري

    #RGB أو #RRGGBB

    /^#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{6})$/

    ✓ #fff #0F766E✗ fff #ffff #12345g

  • UUID

    تنسيق UUID القياسي (الإصدارات 1–8)

    /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i

    ✓ 123e4567-e89b-42d3-a456-426614174000✗ 123e4567-e89b-42d3-c456-426614174000 123e4567e89b42d3a456426614174000

  • إصدار دلالي

    MAJOR.MINOR.PATCH مع إصدار تمهيدي وبيانات إنشاء اختياريين

    /^(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-[\da-zA-Z-]+(?:\.[\da-zA-Z-]+)*)?(?:\+[\da-zA-Z-]+(?:\.[\da-zA-Z-]+)*)?$/

    ✓ 1.0.0 2.1.3-beta.1+build.5✗ 1.0 01.0.0 v1.0.0

  • زوج وسم HTML

    يعثر على وسمي الفتح والإغلاق المتطابقين ويلتقط اسم الوسم والمحتوى

    /<([a-zA-Z][\w-]*)\b[^>]*>([\s\S]*?)<\/\1>/g

    ✓ <b>bold</b> <a href="#">link</a>✗ <b>unclosed plain text

  • سطر فارغ

    مع العلم m يعثر على الأسطر الفارغة أو التي تحتوي مسافات فقط، مثلًا لإزالتها

    /^\s*$/m

    ✓ ✗ text

تستخدم الأنماط صيغة JavaScript وتعمل في معظم اللغات مثل Java وPython وGo، مع الانتباه إلى تهريب الشرطة المائلة. وهي تفحص التنسيق فقط؛ أما حقيقة رقم الهوية أو البطاقة فتحتاج إلى رقم تحقق أو تحقق رسمي.

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

  1. ابحث عن تنسيق أو صفِّ حسب الفئة.
  2. انقر «نسخ» لأخذ النمط؛ هرّب الشرطات المائلة العكسية عند وضعه في سلسلة نصية.
  3. اكتب في المربع أسفل بطاقة لترى فورًا ما إذا كان يطابق.

شرح الخيارات

الصيغة
مكتوبة لجافاسكريبت ومتوافقة مع معظم اللغات مثل Java وPython وGo وPHP؛ داخل السلاسل النصية الحرفية، ضاعف الشرطات المائلة العكسية.
مطابقة السلسلة كاملة
أنماط التحقق مُثبَّتة بـ^ و$ بحيث يجب أن يطابق الإدخال بالكامل. للبحث داخل نص أطول، احذف علامتي التثبيت وأضف علامة g.
التنسيق مقابل الصحة
يتحقق النمط من التنسيق فقط. أما كون رقم هوية أو بطاقة حقيقيًا فيحتاج إلى مجموع تحقق أو فحص رسمي.

كيف يُبنى نمط: مثال IPv4

يُظهر نمط IPv4 البنية المعتادة لتعبير regex للتحقق. يُكتب الجزء الواحد (octet) على هيئة أربعة بدائل تُجرَّب بالترتيب، فلا يقبل كل منها إلا 0–255:

25[0-5]      250–255
2[0-4]\d     200–249
1\d\d        100–199
[1-9]?\d     0–99, with no leading zero

النمط كاملًا هو (octet\.){3}octet، مثبَّتًا بـ ^ و$. ولهذا يطابق 192.168.1.1 بينما لا يطابق 256.1.1.1 ولا 01.2.3.4 ولا 1.2.3.

التنسيق ليس صحة

يتحقق النمط من الشكل فقط. يقبل نمط التاريخ 2026-02-30 لأنه يسمح باليوم 30 في كل الأشهر، ويرفض 2026-13-01 لأن الشهر 13 غير موجود. وللتواريخ الحقيقية، حلّل القيمة بمكتبة التواريخ في لغتك بعد فحص regex.

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

لماذا لا يتوافق نمط البريد الإلكتروني بالكامل مع RFC؟

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

كيف أصحح نمط regex أكثر تعقيدًا؟

استخدم فاحص regex، الذي يبرز كل تطابق ومجموعة ويمكنه اختبار الاستبدالات.

هل تدعم هذه الأنماط يونيكود؟

تستهدف معظمها إدخال ASCII. أضف علامة u وهروبات خصائص يونيكود مثل \p{L} إذا احتجت إلى قبول حروف من أي أبجدية.

الخصوصية

تعمل هذه الأداة بالكامل داخل متصفحك. تُعالَج ملفاتك ونصوصك على جهازك ولا تُرفع أبدًا إلى خوادمنا.

أدوات ذات صلة