Probador de patrones regex XSD
Patrón XSD
Patrón convertido
^[A-Z]{2}[0-9]{3}$Cadena de prueba
Resultado
AB123Referencia de sintaxis de regex XSD
Clases de caracteres
| . | 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) |
Cuantificadores
| 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) |
Grupos
| (abc) | Capturing group |
| (?:abc) | Non-capturing group |
| a|b | Match a or b |
Caracteres escapados
| \t | Tab |
| \n | Newline |
| \r | Carriage return |
| \xhh | Hex character |
| \uhhhh | Unicode character |
Diferencias importantes con respecto a 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. |
Detalles técnicos
Cómo funciona el probador de patrones Regex de XSD
Qué hace la herramienta
El probador de patrones regex de XSD te permite probar patrones regex de XML Schema Definition (XSD) contra texto de ejemplo. Los patrones regex de XSD difieren de las regex de JavaScript en varios aspectos importantes: por defecto coinciden con toda la cadena (anclas ^ y $ implícitas), no admiten aserciones de lookahead/lookbehind y tienen reglas de sintaxis específicas para la validación XML. Esta herramienta convierte patrones XSD a regex compatibles con JavaScript para realizar pruebas mientras explica las diferencias. Es útil para desarrolladores que trabajan con esquemas XML, validación XSD y procesamiento de datos XML y necesitan probar restricciones de patrón definidas en archivos XSD.
Casos de uso comunes para desarrolladores
Los desarrolladores usan probadores de patrones XSD al trabajar con definiciones de XML Schema que incluyen restricciones regex. Los patrones XSD se usan comúnmente para validar el contenido de elementos XML, como direcciones de correo electrónico, fechas, IDs o formatos personalizados. Al definir esquemas XSD, los desarrolladores necesitan probar sus restricciones de patrón para asegurarse de que validan correctamente la entrada esperada mientras rechazan datos no válidos. La herramienta ayuda a verificar que patrones como [A-Z][0-9] coinciden correctamente con formatos como "AB123" pero rechazan "ab123" o "ABC123". Los probadores de patrones XSD son esenciales para el desarrollo de esquemas XML, la validación de datos y el cumplimiento de los estándares XML.
Diferencias clave con las regex de JavaScript
Los patrones regex de XSD tienen varias diferencias importantes con las regex de JavaScript. Primero, los patrones XSD coinciden con toda la cadena por defecto, por lo que no necesitas añadir anclas ^y $. El patrón [A-Z] coincide automáticamente solo con cadenas que son exactamente dos letras mayúsculas. Segundo, XSD no admite aserciones de lookahead ( (?=...)) ni de lookbehind ( (?<=...)). Tercero, XSD admite categorías Unicode como \p{L} para letras y \p{N} para números, que requieren la bandera Unicode en JavaScript. XSD también tiene secuencias especiales como \i y \c para caracteres de nombres XML que no están disponibles en las regex de JavaScript.
Ejemplos de patrones XSD
Los patrones XSD comunes incluyen formatos de fecha como \d{4}-\d{2}-\d{2} para fechas YYYY-MM-DD, patrones de identificador como [A-Z][0-9] para dos letras seguidas de tres dígitos, y patrones Unicode como \p{L}+ para una o más letras Unicode. La herramienta muestra cómo se convierten estos patrones a regex de JavaScript y si las cadenas de prueba coinciden con todo el patrón (coincidencia completa) o solo parcialmente (coincidencia parcial). Dado que los patrones XSD deben coincidir con toda la cadena, las coincidencias parciales indican que el patrón no valida completamente la entrada.
Mejores prácticas
Al probar patrones XSD, recuerda que validan cadenas completas, no subcadenas. Un patrón como \d+ solo coincidirá con cadenas que sean completamente dígitos, no con cadenas que contengan dígitos. Usa clases de caracteres y cuantificadores de forma adecuada: [A-Za-z]+ coincide con una o más letras, mientras que [A-Za-z]* coincide con cero o más letras. Para la validación XML, prueba tanto entradas válidas como no válidas para asegurarte de que tus patrones aceptan correctamente los datos esperados mientras rechazan entradas mal formadas. La herramienta muestra el patrón regex de JavaScript convertido para que puedas ver cómo se traducen los patrones XSD con fines de prueba.