DevToys Web Pro iconDevToys Web Proالمدونة
قيّمنا:
جرّب إضافة المتصفح:

مختبر أنماط Regex لـ XSD

نمط XSD

XSD patterns match the entire string by default (implicit ^ and $). Using xspattern for accurate XSD regex matching.

النمط المُحوَّل

مكافئ تقريبي لتعابير JavaScript النمطية (للعرض فقط). تستخدم المطابقة الفعلية مكتبة xspattern لدعم تعابير XSD النمطية بدقة.
^[A-Z]{2}[0-9]{3}$

سلسلة الاختبار

  • النتيجة

    تطابق كامل
    السلسلة بالكامل تطابق النمط
    النص المطابِق:
    AB123

    مرجع صياغة تعابير XSD النمطية

    فئات المحارف

    .Any character
    [abc]Match a, b, or c
    [^abc]Match anything except a, b, c
    [a-z]Character range (a to z)
    \dDigit (0-9)
    \DNon-digit
    \sWhitespace
    \SNon-whitespace
    \p{L}Unicode letter category(\p{L} (with 'u' flag))
    \p{N}Unicode number category(\p{N} (with 'u' flag))
    \iXML initial name character (XSD only, supported by xspattern)
    \cXML name character (XSD only, supported by xspattern)
    [a-z-[aeiou]]Character class subtraction (XSD only, supported by xspattern)

    المكرِّرات

    a*0 or more
    a+1 or more
    a?0 or 1 (optional)
    a{n}Exactly n times
    a{n,}n or more times
    a{n,m}Between n and m times
    a*?0 or more (non-greedy)
    a+?1 or more (non-greedy)

    المجموعات

    (abc)Capturing group
    (?:abc)Non-capturing group
    a|bMatch a or b

    المحارف المُهرَّبة

    \tTab
    \nNewline
    \rCarriage return
    \xhhHex character
    \uhhhhUnicode character

    اختلافات مهمة عن JavaScript

    No anchorsXSD patterns match entire string by default (implicit ^ and $). xspattern handles this correctly.
    No lookahead/lookbehindXSD does not support (?=...), (?!...), (?<=...), (?<!...)
    Unicode categoriesXSD supports \p{L}, \p{N}, etc. xspattern supports Unicode 15.0.
    XML name charsXSD has \i and \c for XML name characters. xspattern supports these.
    Character class subtractionXSD supports [a-z-[aeiou]] syntax. xspattern fully supports this feature.
    التفاصيل التقنية

    كيف يعمل مختبِر نمط Regex في XSD

    ما الذي تفعله الأداة

    يتيح لك مختبِر نمط regex في XSD اختبار أنماط regex الخاصة بتعريف مخطط XML (XSD) مقابل نص تجريبي. تختلف أنماط regex في XSD عن regex في JavaScript بعدة طرق مهمة: فهي تطابق السلسلة كاملةً افتراضيًا (مرساة ^ و$ ضمنيًا)، ولا تدعم تأكيدات النظرة للأمام/للخلف (lookahead/lookbehind)، ولها قواعد صياغة محددة للتحقق من XML. تقوم هذه الأداة بتحويل أنماط XSD إلى regex متوافق مع JavaScript لأغراض الاختبار مع شرح الفروقات. وهي مفيدة للمطورين الذين يعملون مع مخططات XML والتحقق من XSD ومعالجة بيانات XML ويحتاجون إلى اختبار قيود الأنماط المعرّفة في ملفات XSD.

    حالات استخدام شائعة للمطورين

    يستخدم المطورون مختبرات أنماط XSD عند العمل مع تعريفات مخطط XML التي تتضمن قيود regex. تُستخدم أنماط XSD عادةً للتحقق من محتوى عناصر XML، مثل عناوين البريد الإلكتروني والتواريخ والمعرّفات أو التنسيقات المخصصة. عند تعريف مخططات XSD، يحتاج المطورون إلى اختبار قيود الأنماط للتأكد من أنها تتحقق بشكل صحيح من الإدخال المتوقع مع رفض البيانات غير الصالحة. تساعد الأداة في التحقق من أن أنماطًا مثل [A-Z][0-9] تطابق بشكل صحيح تنسيقات مثل "AB123" لكنها ترفض "ab123" أو "ABC123". تُعد مختبرات أنماط XSD ضرورية لتطوير مخطط XML والتحقق من البيانات وضمان الامتثال لمعايير XML.

    الاختلافات الرئيسية عن Regex في JavaScript

    توجد عدة اختلافات مهمة بين أنماط تعبيرات XSD النمطية وتعبيرات JavaScript النمطية. أولاً، تطابق أنماط XSD السلسلة كاملةً افتراضياً، لذا لا تحتاج إلى إضافة مراسي ^و $. النمط [A-Z] يطابق تلقائياً فقط السلاسل التي تتكون بالضبط من حرفين كبيرين. ثانياً، لا يدعم XSD تأكيدات النظرة المستقبلية ( (?=...)) أو النظرة الخلفية ( (?&lt;=...)). ثالثاً، يدعم XSD فئات يونيكود مثل \p{L} للحروف و \p{N} للأرقام، والتي تتطلب علم Unicode في JavaScript. كما يحتوي XSD على تسلسلات خاصة مثل \iو \c لأحرف أسماء XML غير المتاحة في تعبيرات JavaScript النمطية.

    أمثلة على أنماط XSD

    تشمل أنماط XSD الشائعة تنسيقات التاريخ مثل \d{4}-\d{2}-\d{2} لتواريخ YYYY-MM-DD، وأنماط المعرّفات مثل [A-Z][0-9] لحرفين يتبعهما ثلاثة أرقام، وأنماط يونيكود مثل \p{L}+ لحرف يونيكود واحد أو أكثر. تُظهر الأداة كيفية تحويل هذه الأنماط إلى تعبيرات JavaScript النمطية وما إذا كانت سلاسل الاختبار تطابق النمط بالكامل (تطابق كامل) أو جزئياً فقط (تطابق جزئي). وبما أن أنماط XSD يجب أن تطابق السلسلة كاملةً، فإن التطابقات الجزئية تشير إلى أن النمط لا يتحقق من صحة الإدخال بالكامل.

    أفضل الممارسات

    عند اختبار أنماط XSD، تذكّر أنها تتحقق من السلاسل كاملةً وليس من أجزاء منها. نمط مثل \d+ لن يطابق إلا السلاسل التي تتكون بالكامل من أرقام، وليس السلاسل التي تحتوي على أرقام. استخدم فئات الأحرف والمحدِّدات الكمية بشكل مناسب: [A-Za-z]+ يطابق حرفًا واحدًا أو أكثر، بينما [A-Za-z]* يطابق صفرًا أو أكثر من الحروف. للتحقق من XML، اختبر كلًا من المدخلات الصالحة وغير الصالحة لضمان أن أنماطك تقبل البيانات المتوقعة بشكل صحيح وترفض المدخلات غير السليمة. تعرض الأداة نمط regex المحوّل إلى JavaScript حتى تتمكن من رؤية كيفية ترجمة أنماط XSD لأغراض الاختبار.