DevToys Web Pro iconDevToys Web ProBlog
Evaluează-ne:
Încearcă extensia de browser:

Tester de tipare RegEx XSD

Model XSD

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

Pattern convertit

Echivalent aproximativ al unui regex JavaScript (doar pentru afișare). Potrivirea efectivă folosește biblioteca xspattern pentru suport precis al regex-urilor XSD.
^[A-Z]{2}[0-9]{3}$

Șir de test

  • Rezultat

    Potrivire completă
    Întregul șir se potrivește cu patternul
    Text potrivit:
    AB123

    Referință de sintaxă pentru regex XSD

    Clase de caractere

    .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)

    Cuantificatori

    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)

    Grupuri

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

    Caractere escape

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

    Diferențe importante față de 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.
    Detalii tehnice

    Cum funcționează testerul de tipar Regex XSD

    Ce face instrumentul

    Testerul de tipar regex XSD îți permite să testezi tipare regex din XML Schema Definition (XSD) pe un text de exemplu. Tiparele regex XSD diferă de regex-ul JavaScript în câteva moduri importante: potrivesc întregul șir în mod implicit (ancore ^ și $ implicite), nu suportă aserțiuni de tip lookahead/lookbehind și au reguli de sintaxă specifice pentru validarea XML. Acest instrument convertește tiparele XSD în regex compatibil cu JavaScript pentru testare, explicând în același timp diferențele. Este util pentru dezvoltatorii care lucrează cu scheme XML, validare XSD și procesarea datelor XML și care au nevoie să testeze constrângerile de tipar definite în fișiere XSD.

    Cazuri de utilizare comune pentru dezvoltatori

    Dezvoltatorii folosesc testere de tipar XSD atunci când lucrează cu definiții XML Schema care includ constrângeri regex. Tiparele XSD sunt folosite frecvent pentru a valida conținutul elementelor XML, precum adrese de e-mail, date, ID-uri sau formate personalizate. La definirea schemelor XSD, dezvoltatorii trebuie să-și testeze constrângerile de tipar pentru a se asigura că validează corect intrările așteptate, respingând în același timp datele invalide. Instrumentul ajută la verificarea faptului că tipare precum [A-Z][0-9] potrivesc corect formate precum "AB123", dar resping "ab123" sau "ABC123". Testerele de tipar XSD sunt esențiale pentru dezvoltarea schemelor XML, validarea datelor și asigurarea conformității cu standardele XML.

    Diferențe cheie față de Regex-ul JavaScript

    Tiparele regex XSD au câteva diferențe importante față de regex-ul JavaScript. În primul rând, tiparele XSD potrivesc întregul șir în mod implicit, așa că nu trebuie să adaugi ancorele ^ și $. Tiparul [A-Z] potrivește automat doar șirurile care sunt exact două litere mari. În al doilea rând, XSD nu suportă aserțiuni de tip lookahead ((?=...)) sau lookbehind ((?&lt;=...)). În al treilea rând, XSD suportă categorii Unicode precum \p{L} pentru litere și \p{N} pentru numere, care necesită flag-ul Unicode în JavaScript. XSD are și secvențe speciale precum \i și \c pentru caracterele de nume XML, care nu sunt disponibile în regex-ul JavaScript.

    Exemple de tipare XSD

    Tiparele XSD comune includ formate de dată precum \d{4}-\d{2}-\d{2} pentru date de tip YYYY-MM-DD, tipare de identificator precum [A-Z][0-9] pentru două litere urmate de trei cifre și tipare Unicode precum \p{L}+ pentru una sau mai multe litere Unicode. Instrumentul arată cum sunt convertite aceste tipare în regex JavaScript și dacă șirurile de test se potrivesc cu întregul tipar (potrivire completă) sau doar parțial (potrivire parțială). Deoarece tiparele XSD trebuie să potrivească întregul șir, potrivirile parțiale indică faptul că tiparul nu validează complet intrarea.

    Bune practici

    Când testezi tipare XSD, reține că ele validează șiruri întregi, nu subșiruri. Un tipar precum \d+ va potrivi doar șirurile formate în întregime din cifre, nu șirurile care conțin cifre. Folosește clasele de caractere și cuantificatorii în mod adecvat: [A-Za-z]+ potrivește una sau mai multe litere, în timp ce [A-Za-z]* potrivește zero sau mai multe litere. Pentru validarea XML, testează atât intrări valide, cât și invalide, pentru a te asigura că tiparele tale acceptă corect datele așteptate și resping intrările greșite. Instrumentul afișează tiparul regex JavaScript convertit, astfel încât să poți vedea cum sunt traduse tiparele XSD în scopuri de testare.