XSD Regex minta tesztelő
XSD minta
Konvertált minta
^[A-Z]{2}[0-9]{3}$Tesztelendő szöveg
Eredmény
AB123XSD regex szintaxisreferencia
Karakterosztályok
| . | Any character |
| [abc] | Match a, b, or c |
| [^abc] | Match anything except a, b, c |
| [a-z] | Character range (a to z) |
| \d | Digit (0-9) |
| \D | Non-digit |
| \s | Whitespace |
| \S | Non-whitespace |
| \p{L} | Unicode letter category(\p{L} (with 'u' flag)) |
| \p{N} | Unicode number category(\p{N} (with 'u' flag)) |
| \i | XML initial name character (XSD only, supported by xspattern) |
| \c | XML name character (XSD only, supported by xspattern) |
| [a-z-[aeiou]] | Character class subtraction (XSD only, supported by xspattern) |
Kvantorok
| 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) |
Csoportok
| (abc) | Capturing group |
| (?:abc) | Non-capturing group |
| a|b | Match a or b |
Escape-elt karakterek
| \t | Tab |
| \n | Newline |
| \r | Carriage return |
| \xhh | Hex character |
| \uhhhh | Unicode character |
Fontos eltérések a JavaScripttől
| No anchors | XSD patterns match entire string by default (implicit ^ and $). xspattern handles this correctly. |
| No lookahead/lookbehind | XSD does not support (?=...), (?!...), (?<=...), (?<!...) |
| Unicode categories | XSD supports \p{L}, \p{N}, etc. xspattern supports Unicode 15.0. |
| XML name chars | XSD has \i and \c for XML name characters. xspattern supports these. |
| Character class subtraction | XSD supports [a-z-[aeiou]] syntax. xspattern fully supports this feature. |
Technikai részletek
Hogyan működik az XSD regex minta tesztelő
Mit csinál az eszköz
Az XSD regex minta tesztelő lehetővé teszi, hogy XML Schema Definition (XSD) regex mintákat tesztelj mintaszövegen. Az XSD regex minták több fontos ponton eltérnek a JavaScript regexektől: alapértelmezetten a teljes karakterláncot illesztik (implicit ^ és $ horgonyok), nem támogatják a lookahead/lookbehind állításokat, és az XML-validáláshoz specifikus szintaktikai szabályaik vannak. Ez az eszköz az XSD mintákat JavaScript-kompatibilis regexszé alakítja teszteléshez, miközben elmagyarázza a különbségeket. Hasznos azoknak a fejlesztőknek, akik XML sémákkal, XSD-validálással és XML-adatfeldolgozással dolgoznak, és tesztelniük kell az XSD fájlokban definiált minta-korlátozásokat.
Gyakori fejlesztői felhasználási esetek
A fejlesztők XSD minta tesztelőket használnak, amikor olyan XML Schema definíciókkal dolgoznak, amelyek regex korlátozásokat tartalmaznak. Az XSD mintákat gyakran használják XML elemtartalom validálására, például e-mail címek, dátumok, azonosítók vagy egyedi formátumok esetén. XSD sémák definiálásakor a fejlesztőknek tesztelniük kell a minta-korlátozásaikat, hogy biztosan a várt bemenetet fogadják el, miközben elutasítják az érvénytelen adatokat. Az eszköz segít ellenőrizni, hogy az olyan minták, mint a [A-Z][0-9], helyesen illeszkednek-e az olyan formátumokra, mint az „AB123”, de elutasítják az „ab123” vagy „ABC123” értékeket. Az XSD minta tesztelők elengedhetetlenek az XML sémafejlesztéshez, az adatvalidáláshoz és az XML szabványoknak való megfelelés biztosításához.
Fő különbségek a JavaScript regexhez képest
Az XSD regex mintáknak több fontos különbségük van a JavaScript regexhez képest. Először is, az XSD minták alapértelmezetten a teljes karakterláncot illesztik, így nem kell hozzáadni a ^ és $ horgonyokat. A [A-Z] minta automatikusan csak azokat a karakterláncokat illeszti, amelyek pontosan két nagybetűből állnak. Másodszor, az XSD nem támogatja a lookahead ( (?=...)) vagy lookbehind ( (?<=...)) állításokat. Harmadszor, az XSD támogatja az olyan Unicode kategóriákat, mint a betűkhez a \p{L} és a számokhoz a \p{N}, amelyekhez JavaScriptben a Unicode flag szükséges. Az XSD-nek vannak speciális szekvenciái is, például \i és \c az XML névkarakterekhez, amelyek nem érhetők el a JavaScript regexben.
XSD minta példák
Gyakori XSD minták például a dátumformátumok, mint a \d{4}-\d{2}-\d{2} az ÉÉÉÉ-HH-NN dátumokhoz, az azonosító minták, mint a [A-Z][0-9] két betűt három számjegy követ, valamint az Unicode minták, mint a \p{L}+ egy vagy több Unicode betűhöz. Az eszköz megmutatja, hogyan alakulnak át ezek a minták JavaScript regexszé, és hogy a tesztelt karakterláncok a teljes mintára illeszkednek-e (teljes egyezés) vagy csak részben (részleges egyezés). Mivel az XSD mintáknak a teljes karakterláncra kell illeszkedniük, a részleges egyezések azt jelzik, hogy a minta nem validálja teljesen a bemenetet.
Bevált gyakorlatok
XSD minták tesztelésekor ne feledd, hogy ezek teljes karakterláncokat validálnak, nem részkarakterláncokat. Egy olyan minta, mint a \d+, csak azokat a karakterláncokat fogja illeszteni, amelyek teljes egészében számjegyekből állnak, nem pedig azokat, amelyek számjegyeket tartalmaznak. Használd megfelelően a karakterosztályokat és kvantorokat: a [A-Za-z]+ egy vagy több betűt illeszt, míg a [A-Za-z]* nulla vagy több betűt. XML-validáláshoz tesztelj érvényes és érvénytelen bemeneteket is, hogy a mintáid helyesen fogadják el a várt adatokat, miközben elutasítják a hibás bemenetet. Az eszköz megjeleníti a konvertált JavaScript regex mintát, így láthatod, hogyan fordítódnak le az XSD minták tesztelési célokra.