DevToys Web Pro iconDevToys Web ProBlogi
Arvostele meidät:
Kokeile selainlaajennusta:

XSD Regex -kuviotestaaja

XSD-malli

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

Muunnettu kuvio

Likimääräinen JavaScript-regex-vastine (vain näyttöä varten). Varsinainen täsmäytys käyttää xspattern-kirjastoa tarkan XSD-regex-tuen varmistamiseksi.
^[A-Z]{2}[0-9]{3}$

Testimerkkijono

  • Tulos

    Täysi osuma
    Koko merkkijono vastaa kuviota
    Vastaava teksti:
    AB123

    XSD-regexin syntaksiviite

    Merkkiluokat

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

    Kvanttorit

    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)

    Ryhmät

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

    Ohjausmerkit

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

    Tärkeät erot JavaScriptiin verrattuna

    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.
    Tekniset tiedot

    Miten XSD-regex-kuviotestaaja toimii

    Mitä työkalu tekee

    XSD-regex-kuviotestaajan avulla voit testata XML Schema Definition (XSD) -regex-kuvioita esimerkkitekstiä vasten. XSD-regex-kuviot eroavat JavaScript-regexistä useilla tärkeillä tavoilla: ne täsmäävät oletuksena koko merkkijonoon (implisiittiset ^- ja $-ankkurit), eivät tue lookahead-/lookbehind-assertioita, ja niillä on XML-validointiin liittyvät omat syntaksisääntönsä. Tämä työkalu muuntaa XSD-kuviot JavaScript-yhteensopiviksi regexeiksi testausta varten ja samalla selittää erot. Se on hyödyllinen kehittäjille, jotka työskentelevät XML-skeemojen, XSD-validoinnin ja XML-datan käsittelyn parissa ja joiden täytyy testata XSD-tiedostoissa määriteltyjä kuvioreunaehtoja.

    Yleiset kehittäjien käyttötapaukset

    Kehittäjät käyttävät XSD-kuviotestaajia työskennellessään XML Schema -määritelmien kanssa, jotka sisältävät regex-rajoitteita. XSD-kuvioita käytetään yleisesti XML-elementtien sisällön validointiin, kuten sähköpostiosoitteisiin, päivämääriin, tunnisteisiin tai mukautettuihin formaatteihin. XSD-skeemoja määriteltäessä kehittäjien on testattava kuvioreunaehtonsa varmistaakseen, että ne validoivat odotetun syötteen oikein ja hylkäävät virheellisen datan. Työkalu auttaa varmistamaan, että kuviot kuten [A-Z][0-9] täsmäävät oikein muotoihin kuten "AB123" mutta hylkäävät "ab123" tai "ABC123". XSD-kuviotestaajat ovat olennaisia XML-skeemakehityksessä, datan validoinnissa ja XML-standardien noudattamisen varmistamisessa.

    Keskeiset erot JavaScript-regexiin verrattuna

    XSD-regex-kuvioissa on useita tärkeitä eroja JavaScript-regexiin verrattuna. Ensinnäkin XSD-kuviot täsmäävät oletuksena koko merkkijonoon, joten sinun ei tarvitse lisätä ^and $anchors. Kuvio [A-Z] täsmää automaattisesti vain merkkijonoihin, jotka ovat täsmälleen kaksi isoa kirjainta. Toiseksi XSD ei tue lookahead- ((?=...)) tai lookbehind- ((?&lt;=...)) assertioita. Kolmanneksi XSD tukee Unicode-luokkia kuten \p{L} kirjaimille ja \p{N} numeroille, jotka vaativat JavaScriptissä Unicode-lipun. XSD:ssä on myös erityisjonoja kuten \i ja \c XML-nimimerkeille, joita ei ole saatavilla JavaScript-regexissä.

    XSD-kuvioesimerkkejä

    Yleisiä XSD-kuvioita ovat päivämäärämuodot kuten \d{4}-\d{2}-\d{2} YYYY-MM-DD-päivämäärille, tunnistekuviot kuten [A-Z][0-9] kahdelle kirjaimelle, joita seuraa kolme numeroa, sekä Unicode-kuviot kuten \p{L}+ yhdelle tai useammalle Unicode-kirjaimelle. Työkalu näyttää, miten nämä kuviot muunnetaan JavaScript-regexiksi ja täsmäävätkö testimerkkijonot koko kuvioon (täysi osuma) vai vain osittain (osittainen osuma). Koska XSD-kuvioiden on täsmättävä koko merkkijonoon, osittaiset osumat tarkoittavat, ettei kuvio validoi syötettä kokonaan.

    Parhaat käytännöt

    Kun testaat XSD-kuvioita, muista, että ne validoivat kokonaisia merkkijonoja, eivät alimerkkijonoja. Kuvio kuten \d+will only match strings that are entirely digits, not strings containing digits. Käytä merkkiluokkia ja kvantifioijia tarkoituksenmukaisesti: [A-Za-z]+ täsmää yhteen tai useampaan kirjaimeen, kun taas [A-Za-z]* täsmää nollaan tai useampaan kirjaimeen. XML-validointia varten testaa sekä kelvolliset että virheelliset syötteet varmistaaksesi, että kuviot hyväksyvät odotetun datan ja hylkäävät virheellisen syötteen. Työkalu näyttää muunnetun JavaScript-regex-kuvion, jotta näet, miten XSD-kuviot käännetään testausta varten.