Testador de Padrões Regex de XSD
Padrão XSD
Padrão convertido
^[A-Z]{2}[0-9]{3}$String de teste
Resultado
AB123Referência de sintaxe de regex XSD
Classes 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) |
Quantificadores
| 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 |
Diferenças importantes em relação ao 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. |
Detalhes técnicos
Como funciona o Testador de Padrões Regex de XSD
O Que a Ferramenta Faz
O testador de padrões regex de XSD permite testar padrões regex de XML Schema Definition (XSD) contra um texto de exemplo. Os padrões regex de XSD diferem do regex do JavaScript de várias formas importantes: por padrão, eles correspondem à string inteira (âncoras ^ e $ implícitas), não oferecem suporte a asserções de lookahead/lookbehind e têm regras de sintaxe específicas para validação de XML. Esta ferramenta converte padrões XSD para regex compatível com JavaScript para testes, ao mesmo tempo em que explica as diferenças. Ela é útil para desenvolvedores que trabalham com schemas XML, validação XSD e processamento de dados XML e precisam testar restrições de padrão definidas em arquivos XSD.
Casos de Uso Comuns para Desenvolvedores
Desenvolvedores usam testadores de padrão XSD ao trabalhar com definições de XML Schema que incluem restrições de regex. Padrões XSD são comumente usados para validar o conteúdo de elementos XML, como endereços de e-mail, datas, IDs ou formatos personalizados. Ao definir schemas XSD, os desenvolvedores precisam testar suas restrições de padrão para garantir que validem corretamente a entrada esperada, ao mesmo tempo em que rejeitam dados inválidos. A ferramenta ajuda a verificar que padrões como [A-Z][0-9] correspondem corretamente a formatos como "AB123", mas rejeitam "ab123" ou "ABC123". Testadores de padrão XSD são essenciais para o desenvolvimento de schemas XML, validação de dados e garantia de conformidade com padrões XML.
Principais diferenças em relação ao Regex do JavaScript
Os padrões regex de XSD têm várias diferenças importantes em relação ao regex do JavaScript. Primeiro, os padrões XSD correspondem à string inteira por padrão, então você não precisa adicionar as âncoras ^e $. O padrão [A-Z] automaticamente corresponde apenas a strings que são exatamente duas letras maiúsculas. Segundo, o XSD não oferece suporte a asserções de lookahead ((?=...)) nem de lookbehind ((?<=...)). Terceiro, o XSD oferece suporte a categorias Unicode como \p{L} para letras e \p{N} para números, que exigem a flag Unicode no JavaScript. O XSD também tem sequências especiais como \i e \c para caracteres de nomes XML que não estão disponíveis no regex do JavaScript.
Exemplos de padrões XSD
Padrões XSD comuns incluem formatos de data como \d{4}-\d{2}-\d{2} para datas no formato YYYY-MM-DD, padrões de identificador como [A-Z][0-9] para duas letras seguidas de três dígitos e padrões Unicode como \p{L}+ para uma ou mais letras Unicode. A ferramenta mostra como esses padrões são convertidos para regex do JavaScript e se as strings de teste correspondem ao padrão inteiro (correspondência completa) ou apenas parcialmente (correspondência parcial). Como os padrões XSD devem corresponder à string inteira, correspondências parciais indicam que o padrão não valida totalmente a entrada.
Boas práticas
Ao testar padrões XSD, lembre-se de que eles validam strings inteiras, não substrings. Um padrão como \d+ só corresponderá a strings que sejam inteiramente dígitos, não a strings que contenham dígitos. Use classes de caracteres e quantificadores adequadamente: [A-Za-z]+ corresponde a uma ou mais letras, enquanto [A-Za-z]* corresponde a zero ou mais letras. Para validação de XML, teste entradas válidas e inválidas para garantir que seus padrões aceitem corretamente os dados esperados e rejeitem entradas malformadas. A ferramenta exibe o padrão regex do JavaScript convertido para que você possa ver como os padrões XSD são traduzidos para fins de teste.