DevToys Web Pro iconDevToys Web ProBlog
Ocenite nas:
Preizkusite razširitev brskalnika:

Preizkuševalnik vzorcev XSD Regex

Vzorec XSD

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

Pretvorjen vzorec

Približen ekvivalent JavaScript regex (samo za prikaz). Dejansko ujemanje uporablja knjižnico xspattern za natančno podporo XSD regex.
^[A-Z]{2}[0-9]{3}$

Testni niz

  • Rezultat

    Popolno ujemanje
    Celoten niz se ujema z vzorcem
    Ujemajoče se besedilo:
    AB123

    Referenca sintakse XSD regex

    Znakovni razredi

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

    Kvantifikatorji

    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)

    Skupine

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

    Ubežni znaki

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

    Pomembne razlike v primerjavi z JavaScriptom

    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.
    Tehnične podrobnosti

    Kako deluje preizkuševalnik vzorcev XSD Regex

    Kaj orodje počne

    Preizkuševalnik vzorcev XSD regex vam omogoča testiranje regex vzorcev iz XML Schema Definition (XSD) proti vzorčnemu besedilu. XSD regex vzorci se od JavaScript regex razlikujejo na več pomembnih načinov: privzeto ujemajo celoten niz (implicitna sidra ^ in $), ne podpirajo lookahead/lookbehind trditev in imajo posebna sintaktična pravila za XML validacijo. To orodje pretvori XSD vzorce v z JavaScriptom združljive regexe za testiranje, hkrati pa pojasni razlike. Uporabno je za razvijalce, ki delajo z XML shemami, XSD validacijo in obdelavo XML podatkov ter morajo testirati omejitve vzorcev, definirane v XSD datotekah.

    Pogosti primeri uporabe za razvijalce

    Razvijalci uporabljajo preizkuševalnike XSD vzorcev pri delu z definicijami XML Schema, ki vključujejo regex omejitve. XSD vzorci se pogosto uporabljajo za validacijo vsebine XML elementov, kot so e-poštni naslovi, datumi, ID-ji ali prilagojeni formati. Pri definiranju XSD shem morajo razvijalci preizkusiti svoje omejitve vzorcev, da zagotovijo, da pravilno validirajo pričakovani vnos in hkrati zavrnejo neveljavne podatke. Orodje pomaga preveriti, da vzorci, kot je [A-Z][0-9], pravilno ujemajo formate, kot je "AB123", vendar zavrnejo "ab123" ali "ABC123". Preizkuševalniki XSD vzorcev so ključni za razvoj XML shem, validacijo podatkov in zagotavljanje skladnosti z XML standardi.

    Ključne razlike v primerjavi z JavaScript Regex

    XSD regex vzorci imajo več pomembnih razlik v primerjavi z JavaScript regex. Prvič, XSD vzorci privzeto ujemajo celoten niz, zato vam ni treba dodajati sider ^in $. Vzorec [A-Z] samodejno ujema le nize, ki so natanko dve veliki črki. Drugič, XSD ne podpira lookahead ( (?=...)) ali lookbehind ( (?&lt;=...)) trditev. Tretjič, XSD podpira Unicode kategorije, kot je \p{L} za črke in \p{N} za številke, kar v JavaScriptu zahteva Unicode zastavico. XSD ima tudi posebna zaporedja, kot sta \i in \c za znake XML imen, ki niso na voljo v JavaScript regex.

    Primeri XSD vzorcev

    Pogosti XSD vzorci vključujejo datumske formate, kot je \d{4}-\d{2}-\d{2} za datume YYYY-MM-DD, identifikatorske vzorce, kot je [A-Z][0-9] za dve črki, ki jima sledijo tri števke, ter Unicode vzorce, kot je \p{L}+ za eno ali več Unicode črk. Orodje prikazuje, kako se ti vzorci pretvorijo v JavaScript regex in ali se testni nizi ujemajo s celotnim vzorcem (polno ujemanje) ali le delno (delno ujemanje). Ker morajo XSD vzorci ujemati celoten niz, delna ujemanja pomenijo, da vzorec ne validira vnosa v celoti.

    Najboljše prakse

    Pri testiranju XSD vzorcev ne pozabite, da validirajo celotne nize, ne podnizov. Vzorec, kot je \d+, bo ujemal le nize, ki so v celoti sestavljeni iz števk, ne pa nizov, ki števke le vsebujejo. Uporabljajte razrede znakov in kvantifikatorje ustrezno: [A-Za-z]+ ujema eno ali več črk, medtem ko [A-Za-z]* ujema nič ali več črk. Za XML validacijo testirajte tako veljavne kot neveljavne vnose, da zagotovite, da vaši vzorci pravilno sprejmejo pričakovane podatke in zavrnejo nepravilno oblikovan vnos. Orodje prikaže pretvorjen JavaScript regex vzorec, da lahko vidite, kako so XSD vzorci prevedeni za namene testiranja.