DevToys Web Pro iconDevToys Web ProΙστολόγιο
Αξιολογήστε μας:
Δοκιμάστε την επέκταση προγράμματος περιήγησης:

Δοκιμαστής Μοτίβων Regex XSD

Μοτίβο XSD

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

Μετατρεπόμενο μοτίβο

Προσεγγιστικό ισοδύναμο regex JavaScript (μόνο για εμφάνιση). Η πραγματική αντιστοίχιση χρησιμοποιεί τη βιβλιοθήκη xspattern για ακριβή υποστήριξη XSD regex.
^[A-Z]{2}[0-9]{3}$

Δοκιμαστική συμβολοσειρά

  • Αποτέλεσμα

    Πλήρης αντιστοίχιση
    Ολόκληρη η συμβολοσειρά αντιστοιχεί στο μοτίβο
    Αντιστοιχισμένο κείμενο:
    AB123

    Αναφορά σύνταξης XSD Regex

    Κλάσεις χαρακτήρων

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

    Ποσοδείκτες

    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)

    Ομάδες

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

    Χαρακτήρες διαφυγής

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

    Σημαντικές διαφορές από τη 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.
    Τεχνικές λεπτομέρειες

    Πώς λειτουργεί ο Ελεγκτής Μοτίβων Regex XSD

    Τι κάνει το εργαλείο

    Ο ελεγκτής μοτίβων regex XSD σάς επιτρέπει να δοκιμάζετε μοτίβα regex του XML Schema Definition (XSD) πάνω σε δείγμα κειμένου. Τα μοτίβα regex XSD διαφέρουν από τα regex της JavaScript με αρκετούς σημαντικούς τρόπους: ταιριάζουν ολόκληρη τη συμβολοσειρά από προεπιλογή (σιωπηρά άγκιστρα ^ και $), δεν υποστηρίζουν assertions lookahead/lookbehind και έχουν συγκεκριμένους κανόνες σύνταξης για επικύρωση XML. Αυτό το εργαλείο μετατρέπει μοτίβα XSD σε regex συμβατά με JavaScript για δοκιμή, ενώ εξηγεί τις διαφορές. Είναι χρήσιμο για προγραμματιστές που εργάζονται με σχήματα XML, επικύρωση XSD και επεξεργασία δεδομένων XML και χρειάζονται να δοκιμάσουν περιορισμούς μοτίβων που ορίζονται σε αρχεία XSD.

    Συνηθισμένες περιπτώσεις χρήσης για προγραμματιστές

    Οι προγραμματιστές χρησιμοποιούν ελεγκτές μοτίβων XSD όταν εργάζονται με ορισμούς XML Schema που περιλαμβάνουν περιορισμούς regex. Τα μοτίβα XSD χρησιμοποιούνται συχνά για την επικύρωση του περιεχομένου στοιχείων XML, όπως διευθύνσεις email, ημερομηνίες, IDs ή προσαρμοσμένες μορφές. Κατά τον ορισμό σχημάτων XSD, οι προγραμματιστές πρέπει να δοκιμάζουν τους περιορισμούς μοτίβων τους ώστε να διασφαλίζουν ότι επικυρώνουν σωστά την αναμενόμενη είσοδο, ενώ απορρίπτουν μη έγκυρα δεδομένα. Το εργαλείο βοηθά να επαληθεύσετε ότι μοτίβα όπως [A-Z][0-9] ταιριάζουν σωστά μορφές όπως "AB123" αλλά απορρίπτουν "ab123" ή "ABC123". Οι ελεγκτές μοτίβων XSD είναι απαραίτητοι για την ανάπτυξη σχημάτων XML, την επικύρωση δεδομένων και τη διασφάλιση συμμόρφωσης με τα πρότυπα XML.

    Βασικές διαφορές από τα Regex της JavaScript

    Τα μοτίβα regex XSD έχουν αρκετές σημαντικές διαφορές από τα regex της JavaScript. Πρώτον, τα μοτίβα XSD ταιριάζουν ολόκληρη τη συμβολοσειρά από προεπιλογή, οπότε δεν χρειάζεται να προσθέσετε άγκιστρα ^και $. Το μοτίβο [A-Z] ταιριάζει αυτόματα μόνο συμβολοσειρές που είναι ακριβώς δύο κεφαλαία γράμματα. Δεύτερον, το XSD δεν υποστηρίζει assertions lookahead ( (?=...)) ή lookbehind ( (?&lt;=...)). Τρίτον, το XSD υποστηρίζει κατηγορίες Unicode όπως \p{L} για γράμματα και \p{N} για αριθμούς, που απαιτούν τη σημαία Unicode στη JavaScript. Το XSD έχει επίσης ειδικές ακολουθίες όπως \i και \c για χαρακτήρες ονομάτων XML που δεν είναι διαθέσιμες στα regex της JavaScript.

    Παραδείγματα Μοτίβων XSD

    Συνηθισμένα μοτίβα XSD περιλαμβάνουν μορφές ημερομηνίας όπως \d{4}-\d{2}-\d{2} για ημερομηνίες YYYY-MM-DD, μοτίβα αναγνωριστικών όπως [A-Z][0-9] για δύο γράμματα ακολουθούμενα από τρία ψηφία, και μοτίβα Unicode όπως \p{L}+ για ένα ή περισσότερα γράμματα Unicode. Το εργαλείο δείχνει πώς αυτά τα μοτίβα μετατρέπονται σε regex JavaScript και αν οι δοκιμαστικές συμβολοσειρές ταιριάζουν με ολόκληρο το μοτίβο (πλήρης αντιστοίχιση) ή μόνο μερικώς (μερική αντιστοίχιση). Εφόσον τα μοτίβα XSD πρέπει να ταιριάζουν ολόκληρη τη συμβολοσειρά, οι μερικές αντιστοιχίσεις υποδεικνύουν ότι το μοτίβο δεν επικυρώνει πλήρως την είσοδο.

    Βέλτιστες πρακτικές

    Κατά τη δοκιμή μοτίβων XSD, να θυμάστε ότι επικυρώνουν ολόκληρες συμβολοσειρές, όχι υποσυμβολοσειρές. Ένα μοτίβο όπως \d+ θα ταιριάξει μόνο συμβολοσειρές που αποτελούνται εξ ολοκλήρου από ψηφία, όχι συμβολοσειρές που περιέχουν ψηφία. Χρησιμοποιήστε κατάλληλα κλάσεις χαρακτήρων και ποσοδείκτες: το [A-Za-z]+ ταιριάζει ένα ή περισσότερα γράμματα, ενώ το [A-Za-z]* ταιριάζει μηδέν ή περισσότερα γράμματα. Για επικύρωση XML, δοκιμάστε τόσο έγκυρες όσο και μη έγκυρες εισόδους ώστε να διασφαλίσετε ότι τα μοτίβα σας αποδέχονται σωστά τα αναμενόμενα δεδομένα, ενώ απορρίπτουν κακοσχηματισμένη είσοδο. Το εργαλείο εμφανίζει το μετατρεπόμενο μοτίβο regex JavaScript ώστε να βλέπετε πώς μεταφράζονται τα μοτίβα XSD για σκοπούς δοκιμής.