XSD regex-mustri testija
XSD muster
Teisendatud muster
^[A-Z]{2}[0-9]{3}$Testtekst
Tulemus
AB123XSD regulaaravaldiste süntaksi viide
Märgiklassid
| . | 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) |
Kvantorid
| 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) |
Grupid
| (abc) | Capturing group |
| (?:abc) | Non-capturing group |
| a|b | Match a or b |
Põgenemismärgid
| \t | Tab |
| \n | Newline |
| \r | Carriage return |
| \xhh | Hex character |
| \uhhhh | Unicode character |
Olulised erinevused JavaScriptist
| 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. |
Tehnilised üksikasjad
Kuidas XSD regex-mustri testija töötab
Mida tööriist teeb
XSD regex-mustri testija võimaldab testida XML Schema Definitioni (XSD) regex-mustreid näidisteksti vastu. XSD regex-mustrid erinevad JavaScripti regexist mitmel olulisel viisil: vaikimisi sobitatakse kogu string (implitsiitsed ^ ja $ ankrud), ei toetata lookahead/lookbehind-assertsioone ning XML-i valideerimiseks kehtivad spetsiifilised süntaksireeglid. See tööriist teisendab XSD mustrid testimiseks JavaScriptiga ühilduvaks regexiks, selgitades samal ajal erinevusi. See on kasulik arendajatele, kes töötavad XML-skeemide, XSD valideerimise ja XML-andmetöötlusega ning peavad testima XSD-failides määratletud mustripiiranguid.
Levinud kasutusjuhtumid arendajatele
Arendajad kasutavad XSD mustritestijaid, kui töötavad XML Schema definitsioonidega, mis sisaldavad regex-piiranguid. XSD mustreid kasutatakse sageli XML-elementide sisu valideerimiseks, näiteks e-posti aadressid, kuupäevad, ID-d või kohandatud vormingud. XSD skeemide määratlemisel peavad arendajad testima oma mustripiiranguid, et veenduda, et need valideerivad korrektselt oodatud sisendi ja lükkavad tagasi vigased andmed. Tööriist aitab kontrollida, et mustrid nagu [A-Z][0-9] sobituvad õigesti vormingutega nagu "AB123", kuid lükkavad tagasi "ab123" või "ABC123". XSD mustritestijad on olulised XML-skeemide arenduses, andmete valideerimisel ja XML-standarditele vastavuse tagamisel.
Peamised erinevused JavaScripti regexist
XSD regex-mustritel on mitu olulist erinevust võrreldes JavaScripti regexiga. Esiteks sobitavad XSD mustrid vaikimisi kogu stringi, seega ei pea lisama ^ja $ankruid. Muster [A-Z] sobitab automaatselt ainult stringe, mis on täpselt kaks suurtähte. Teiseks ei toeta XSD lookahead'i ( (?=...)) ega lookbehind'i ( (?<=...)) assertsioone. Kolmandaks toetab XSD Unicode'i kategooriaid nagu \p{L} tähtede jaoks ja \p{N} numbrite jaoks, mis nõuavad JavaScriptis Unicode'i lippu. XSD-l on ka erijadad nagu \i ja \c XML-nime märkide jaoks, mida JavaScripti regexis ei ole.
XSD mustrite näited
Levinud XSD mustrid hõlmavad kuupäevavorminguid nagu \d{4}-\d{2}-\d{2} YYYY-MM-DD kuupäevade jaoks, identifikaatorimustreid nagu [A-Z][0-9] kahe tähe ja kolme numbri jaoks ning Unicode'i mustreid nagu \p{L}+ ühe või enama Unicode'i tähe jaoks. Tööriist näitab, kuidas need mustrid teisendatakse JavaScripti regexiks ja kas teststringid sobituvad kogu mustriga (täissobivus) või ainult osaliselt (osaline sobivus). Kuna XSD mustrid peavad sobituma kogu stringiga, viitavad osalised sobivused sellele, et muster ei valideeri sisendit täielikult.
Parimad tavad
XSD mustrite testimisel pea meeles, et need valideerivad terveid stringe, mitte alamsõnesid. Muster nagu \d+ sobitub ainult stringidega, mis koosnevad täielikult numbritest, mitte stringidega, mis sisaldavad numbreid. Kasuta märgiklasse ja kvantoreid sobivalt: [A-Za-z]+ sobitab ühe või mitu tähte, samas kui [A-Za-z]* sobitab null või rohkem tähti. XML-i valideerimisel testi nii kehtivaid kui ka vigaseid sisendeid, et sinu mustrid aktsepteeriksid oodatud andmeid ja lükkaksid tagasi valesti vormistatud sisendi. Tööriist kuvab teisendatud JavaScripti regex-mustri, et näeksid, kuidas XSD mustrid testimise eesmärgil tõlgitakse.