Provador de patrons Regex XSD
Patró XSD
Patró convertit
^[A-Z]{2}[0-9]{3}$Cadena de prova
Resultat
AB123Referència de sintaxi de regex XSD
Classes de caràcters
| . | 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) |
Quantificadors
| 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) |
Grups
| (abc) | Capturing group |
| (?:abc) | Non-capturing group |
| a|b | Match a or b |
Caràcters escapats
| \t | Tab |
| \n | Newline |
| \r | Carriage return |
| \xhh | Hex character |
| \uhhhh | Unicode character |
Diferències importants respecte de JavaScript
| 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. |
Detalls tècnics
Com funciona el provador de patrons Regex d'XSD
Què fa l’eina
El provador de patrons regex d'XSD et permet provar patrons regex de la Definició d'Esquema XML (XSD) contra un text de mostra. Els patrons regex d'XSD difereixen dels regex de JavaScript en diversos aspectes importants: per defecte coincideixen amb tota la cadena (ancoratges ^ i $ implícits), no admeten assercions de lookahead/lookbehind i tenen regles de sintaxi específiques per a la validació XML. Aquesta eina converteix els patrons XSD a regex compatibles amb JavaScript per fer proves mentre n'explica les diferències. És útil per a desenvolupadors que treballen amb esquemes XML, validació XSD i processament de dades XML i que necessiten provar les restriccions de patrons definides en fitxers XSD.
Casos d’ús habituals per a desenvolupadors
Els desenvolupadors utilitzen provadors de patrons XSD quan treballen amb definicions d'XML Schema que inclouen restriccions regex. Els patrons XSD s'utilitzen habitualment per validar el contingut d'elements XML, com ara adreces de correu electrònic, dates, identificadors o formats personalitzats. En definir esquemes XSD, els desenvolupadors han de provar les seves restriccions de patrons per assegurar-se que validen correctament l'entrada esperada i, alhora, rebutgen dades no vàlides. L'eina ajuda a verificar que patrons com [A-Z][0-9] coincideixen correctament amb formats com "AB123" però rebutgen "ab123" o "ABC123". Els provadors de patrons XSD són essencials per al desenvolupament d'esquemes XML, la validació de dades i per garantir el compliment dels estàndards XML.
Diferències clau respecte als regex de JavaScript
Els patrons regex d'XSD tenen diverses diferències importants respecte als regex de JavaScript. En primer lloc, els patrons XSD coincideixen amb tota la cadena per defecte, de manera que no cal afegir ^and $anchors. El patró [A-Z] automàticament només coincideix amb cadenes que són exactament dues lletres majúscules. En segon lloc, XSD no admet assercions de lookahead ( (?=...)) ni de lookbehind ( (?<=...)). En tercer lloc, XSD admet categories Unicode com \p{L}per a lletres i \p{N}per a números, que requereixen el flag Unicode a JavaScript. XSD també té seqüències especials com \iand \cper a caràcters de noms XML que no estan disponibles als regex de JavaScript.
Exemples de patrons XSD
Els patrons XSD habituals inclouen formats de data com \d{4}-\d{2}-\d{2} per a dates YYYY-MM-DD, patrons d'identificador com [A-Z][0-9] per a dues lletres seguides de tres dígits, i patrons Unicode com \p{L}+ per a una o més lletres Unicode. L'eina mostra com es converteixen aquests patrons a regex de JavaScript i si les cadenes de prova coincideixen amb tot el patró (coincidència completa) o només parcialment (coincidència parcial). Com que els patrons XSD han de coincidir amb tota la cadena, les coincidències parcials indiquen que el patró no valida completament l'entrada.
Bones pràctiques
Quan provis patrons XSD, recorda que validen cadenes senceres, no subcadenes. Un patró com \d+will only match strings that are entirely digits, not strings containing digits. Utilitza adequadament les classes de caràcters i els quantificadors: [A-Za-z]+ coincideix amb una o més lletres, mentre que [A-Za-z]* coincideix amb zero o més lletres. Per a la validació XML, prova tant entrades vàlides com no vàlides per assegurar-te que els teus patrons accepten correctament les dades esperades i rebutgen entrades malformades. L'eina mostra el patró regex de JavaScript convertit perquè puguis veure com es tradueixen els patrons XSD amb finalitats de prova.