DevToys Web Pro iconDevToys Web ProTinklaraštis
Įvertinkite mus:
Išbandykite naršyklės plėtinį:

XSD regex šablonų testuotojas

XSD šablonas

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

Konvertuotas šablonas

Apytikslis JavaScript reguliariosios išraiškos atitikmuo (tik rodymui). Faktiniam atitikimui naudojama xspattern biblioteka, užtikrinanti tikslų XSD reguliariųjų išraiškų palaikymą.
^[A-Z]{2}[0-9]{3}$

Testo eilutė

  • Rezultatas

    Visiškas atitikimas
    Visa eilutė atitinka šabloną
    Atitikęs tekstas:
    AB123

    XSD reguliariųjų išraiškų sintaksės nuoroda

    Simbolių klasės

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

    Kvantifikatoriai

    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)

    Grupės

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

    Ekranuoti simboliai

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

    Svarbūs skirtumai nuo 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.
    Techninė informacija

    Kaip veikia XSD reguliariųjų išraiškų šablonų testuoklis

    Ką daro įrankis

    XSD reguliariųjų išraiškų šablonų testuoklis leidžia testuoti XML schemos aprašo (XSD) reguliariųjų išraiškų šablonus su pavyzdiniu tekstu. XSD reguliariosios išraiškos keliais svarbiais aspektais skiriasi nuo JavaScript regex: pagal nutylėjimą jos atitinka visą eilutę (numanomi ^ ir $ inkarai), nepalaiko lookahead/lookbehind teiginių ir turi specifines sintaksės taisykles XML validacijai. Šis įrankis konvertuoja XSD šablonus į su JavaScript suderinamas reguliariąsias išraiškas testavimui, kartu paaiškindamas skirtumus. Jis naudingas kūrėjams, dirbantiems su XML schemomis, XSD validacija ir XML duomenų apdorojimu, kuriems reikia išbandyti XSD failuose apibrėžtus šablonų apribojimus.

    Dažniausi kūrėjų naudojimo atvejai

    Kūrėjai naudoja XSD šablonų testuoklius dirbdami su XML schemų aprašais, kuriuose yra regex apribojimų. XSD šablonai dažnai naudojami XML elementų turiniui validuoti, pavyzdžiui, el. pašto adresams, datoms, ID ar pasirinktiniams formatams. Apibrėžiant XSD schemas, kūrėjams reikia ištestuoti šablonų apribojimus, kad įsitikintų, jog jie teisingai validuoja laukiamą įvestį ir atmeta neteisingus duomenis. Įrankis padeda patikrinti, ar tokie šablonai kaip [A-Z][0-9] teisingai atitinka formatus, pvz., "AB123", bet atmeta "ab123" ar "ABC123". XSD šablonų testuokliai yra būtini XML schemų kūrimui, duomenų validacijai ir atitikčiai XML standartams užtikrinti.

    Pagrindiniai skirtumai nuo JavaScript regex

    XSD reguliariųjų išraiškų šablonai turi kelis svarbius skirtumus nuo JavaScript regex. Pirma, XSD šablonai pagal nutylėjimą atitinka visą eilutę, todėl nereikia pridėti ^ir $inkarų. Šablonas [A-Z] automatiškai atitinka tik tas eilutes, kurios yra tiksliai dvi didžiosios raidės. Antra, XSD nepalaiko lookahead ( (?=...)) ar lookbehind ( (?&lt;=...)) teiginių. Trečia, XSD palaiko Unicode kategorijas, pvz., \p{L} raidėms ir \p{N} skaičiams, kurioms JavaScript reikia Unicode vėliavėlės. XSD taip pat turi specialias sekas, tokias kaip \i ir \c, skirtas XML vardo simboliams, kurių JavaScript regex neturi.

    XSD šablonų pavyzdžiai

    Dažni XSD šablonai apima datų formatus, pvz., \d{4}-\d{2}-\d{2} YYYY-MM-DD datoms, identifikatorių šablonus, pvz., [A-Z][0-9] dviem raidėms, po kurių seka trys skaitmenys, ir Unicode šablonus, pvz., \p{L}+ vienai ar daugiau Unicode raidžių. Įrankis parodo, kaip šie šablonai konvertuojami į JavaScript regex ir ar testinės eilutės atitinka visą šabloną (pilnas atitikimas), ar tik iš dalies (dalinis atitikimas). Kadangi XSD šablonai turi atitikti visą eilutę, daliniai atitikimai rodo, kad šablonas pilnai nevaliduoja įvesties.

    Geriausios praktikos

    Testuodami XSD šablonus, prisiminkite, kad jie validuoja visas eilutes, o ne poeilutes. Šablonas, pvz., \d+ atitiks tik tas eilutes, kurios sudarytos vien iš skaitmenų, o ne eilutes, kuriose yra skaitmenų. Tinkamai naudokite simbolių klases ir kvantifikatorius: [A-Za-z]+ atitinka vieną ar daugiau raidžių, o [A-Za-z]* atitinka nulį ar daugiau raidžių. XML validacijai testuokite tiek teisingą, tiek neteisingą įvestį, kad įsitikintumėte, jog šablonai priima laukiamus duomenis ir atmeta netaisyklingą įvestį. Įrankis rodo konvertuotą JavaScript regex šabloną, kad matytumėte, kaip XSD šablonai verčiami testavimo tikslais.