DevToys Web Pro iconDevToys Web ProBlog
Bewerten Sie uns:
Browser-Erweiterung ausprobieren:

XSD-Regex-Pattern-Tester

XSD-Muster

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

Konvertiertes Muster

Ungefähres JavaScript-Regex-Äquivalent (nur zur Anzeige). Der tatsächliche Abgleich verwendet die xspattern-Bibliothek für eine korrekte XSD-Regex-Unterstützung.
^[A-Z]{2}[0-9]{3}$

Testzeichenfolge

  • Ergebnis

    Vollständige Übereinstimmung
    Die gesamte Zeichenkette entspricht dem Muster
    Übereinstimmender Text:
    AB123

    XSD-Regex-Syntaxreferenz

    Zeichenklassen

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

    Quantifizierer

    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)

    Gruppen

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

    Escape-Zeichen

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

    Wichtige Unterschiede zu 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.
    Technische Details

    So funktioniert der XSD-Regex-Pattern-Tester

    Was das Tool macht

    Der XSD-Regex-Pattern-Tester ermöglicht es Ihnen, Regex-Patterns aus XML Schema Definition (XSD) anhand von Beispieltext zu testen. XSD-Regex-Patterns unterscheiden sich in mehreren wichtigen Punkten von JavaScript-Regex: Sie matchen standardmäßig die gesamte Zeichenkette (implizite ^- und $-Anker), unterstützen keine Lookahead-/Lookbehind-Assertions und haben spezifische Syntaxregeln für die XML-Validierung. Dieses Tool konvertiert XSD-Patterns zu JavaScript-kompatiblen Regex zum Testen und erklärt dabei die Unterschiede. Es ist nützlich für Entwickler, die mit XML-Schemas, XSD-Validierung und XML-Datenverarbeitung arbeiten und Pattern-Constraints testen müssen, die in XSD-Dateien definiert sind.

    Häufige Anwendungsfälle für Entwickler

    Entwickler verwenden XSD-Pattern-Tester, wenn sie mit XML-Schema-Definitionen arbeiten, die Regex-Constraints enthalten. XSD-Patterns werden häufig verwendet, um den Inhalt von XML-Elementen zu validieren, z. B. E-Mail-Adressen, Datumsangaben, IDs oder benutzerdefinierte Formate. Beim Definieren von XSD-Schemas müssen Entwickler ihre Pattern-Constraints testen, um sicherzustellen, dass sie erwartete Eingaben korrekt validieren und gleichzeitig ungültige Daten zurückweisen. Das Tool hilft zu überprüfen, dass Patterns wie [A-Z][0-9] Formate wie "AB123" korrekt matchen, aber "ab123" oder "ABC123" zurückweisen. XSD-Pattern-Tester sind essenziell für die Entwicklung von XML-Schemas, Datenvalidierung und die Sicherstellung der Konformität mit XML-Standards.

    Wichtige Unterschiede zu JavaScript-Regex

    XSD-Regex-Patterns weisen mehrere wichtige Unterschiede zu JavaScript-Regex auf. Erstens matchen XSD-Patterns standardmäßig die gesamte Zeichenkette, sodass Sie keine ^und $Anker hinzufügen müssen. Das Pattern [A-Z] matcht automatisch nur Zeichenketten, die genau aus zwei Großbuchstaben bestehen. Zweitens unterstützt XSD keine Lookahead- ((?=...)) oder Lookbehind- ((?&lt;=...)) Assertions. Drittens unterstützt XSD Unicode-Kategorien wie \p{L} für Buchstaben und \p{N} für Zahlen, die in JavaScript das Unicode-Flag erfordern. XSD hat außerdem spezielle Sequenzen wie \i und \c für XML-Namenszeichen, die in JavaScript-Regex nicht verfügbar sind.

    Beispiele für XSD-Patterns

    Gängige XSD-Patterns umfassen Datumsformate wie \d{4}-\d{2}-\d{2} für YYYY-MM-DD-Daten, Bezeichner-Patterns wie [A-Z][0-9] für zwei Buchstaben gefolgt von drei Ziffern sowie Unicode-Patterns wie \p{L}+ für einen oder mehrere Unicode-Buchstaben. Das Tool zeigt, wie diese Patterns in JavaScript-Regex konvertiert werden und ob Testzeichenketten das gesamte Pattern matchen (vollständiger Match) oder nur teilweise (teilweiser Match). Da XSD-Patterns die gesamte Zeichenkette matchen müssen, deuten Teilmatches darauf hin, dass das Pattern die Eingabe nicht vollständig validiert.

    Bewährte Praktiken

    Beim Testen von XSD-Patterns sollten Sie daran denken, dass sie ganze Zeichenketten validieren, nicht Teilzeichenketten. Ein Pattern wie \d+ matcht nur Zeichenketten, die vollständig aus Ziffern bestehen, nicht Zeichenketten, die Ziffern enthalten. Verwenden Sie Zeichenklassen und Quantifizierer passend: [A-Za-z]+ matcht einen oder mehrere Buchstaben, während [A-Za-z]* null oder mehr Buchstaben matcht. Für die XML-Validierung testen Sie sowohl gültige als auch ungültige Eingaben, um sicherzustellen, dass Ihre Patterns erwartete Daten korrekt akzeptieren und fehlerhafte Eingaben zurückweisen. Das Tool zeigt das konvertierte JavaScript-Regex-Pattern an, damit Sie sehen können, wie XSD-Patterns zu Testzwecken übersetzt werden.