DevToys Web Pro iconDevToys Web ProBlogg
Vurder oss:
Prøv nettleserutvidelsen:

Tester for XSD-regex-mønstre

XSD-mønster

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

Konvertert mønster

Omtrentlig JavaScript-regexekvivalent (kun for visning). Faktisk matching bruker xspattern-biblioteket for nøyaktig støtte for XSD-regex.
^[A-Z]{2}[0-9]{3}$

Teststreng

  • Resultat

    Full treff
    Hele strengen samsvarer med mønsteret
    Samsvarende tekst:
    AB123

    Referanse for XSD-regexsyntaks

    Tegnklasser

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

    Kvantifikatorer

    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)

    Grupper

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

    Escape-tegn

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

    Viktige forskjeller fra 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.
    Tekniske detaljer

    Slik fungerer XSD-regexmønstertesteren

    Hva verktøyet gjør

    XSD-regexmønstertesteren lar deg teste regexmønstre i XML Schema Definition (XSD) mot eksempeltekst. XSD-regexmønstre skiller seg fra JavaScript-regex på flere viktige måter: de matcher hele strengen som standard (implisitte ^- og $-ankre), støtter ikke lookahead/lookbehind-assertions, og har spesifikke syntaksregler for XML-validering. Dette verktøyet konverterer XSD-mønstre til JavaScript-kompatible regex for testing, samtidig som det forklarer forskjellene. Det er nyttig for utviklere som jobber med XML-skjemaer, XSD-validering og behandling av XML-data, og som trenger å teste mønsterbegrensninger definert i XSD-filer.

    Vanlige bruksområder for utviklere

    Utviklere bruker XSD-mønstertestere når de jobber med XML Schema-definisjoner som inkluderer regex-begrensninger. XSD-mønstre brukes ofte til å validere innholdet i XML-elementer, som e-postadresser, datoer, ID-er eller egendefinerte formater. Når utviklere definerer XSD-skjemaer, må de teste mønsterbegrensningene sine for å sikre at de validerer forventet input korrekt, samtidig som de avviser ugyldige data. Verktøyet hjelper med å verifisere at mønstre som [A-Z][0-9] matcher formater som "AB123", men avviser "ab123" eller "ABC123". XSD-mønstertestere er essensielle for utvikling av XML-skjemaer, datavalidering og for å sikre samsvar med XML-standarder.

    Viktige forskjeller fra JavaScript-regex

    XSD-regexmønstre har flere viktige forskjeller fra JavaScript-regex. For det første matcher XSD-mønstre hele strengen som standard, så du trenger ikke å legge til ^og $ankre. Mønsteret [A-Z] matcher automatisk bare strenger som er nøyaktig to store bokstaver. For det andre støtter ikke XSD lookahead ((?=...)) eller lookbehind ((?&lt;=...)) assertions. For det tredje støtter XSD Unicode-kategorier som \p{L} for bokstaver og \p{N} for tall, som krever Unicode-flagget i JavaScript. XSD har også spesialsekvenser som \i og \c for XML-navnetegn som ikke er tilgjengelige i JavaScript-regex.

    Eksempler på XSD-mønstre

    Vanlige XSD-mønstre inkluderer datoformater som \d{4}-\d{2}-\d{2} for datoer i formatet YYYY-MM-DD, identifikatormønstre som [A-Z][0-9] for to bokstaver etterfulgt av tre sifre, og Unicode-mønstre som \p{L}+ for én eller flere Unicode-bokstaver. Verktøyet viser hvordan disse mønstrene konverteres til JavaScript-regex, og om teststrenger matcher hele mønsteret (full match) eller bare delvis (partial match). Siden XSD-mønstre må matche hele strengen, indikerer delvise treff at mønsteret ikke validerer input fullt ut.

    Beste praksis

    Når du tester XSD-mønstre, husk at de validerer hele strenger, ikke delstrenger. Et mønster som \d+ vil bare matche strenger som utelukkende består av sifre, ikke strenger som inneholder sifre. Bruk tegnklasser og kvantifikatorer riktig: [A-Za-z]+ matcher én eller flere bokstaver, mens [A-Za-z]* matcher null eller flere bokstaver. For XML-validering bør du teste både gyldige og ugyldige input for å sikre at mønstrene dine korrekt godtar forventede data og avviser feilformatert input. Verktøyet viser det konverterte JavaScript-regexmønsteret slik at du kan se hvordan XSD-mønstre oversettes for testformål.