DevToys Web Pro iconDevToys Web ProBlog
Avalie-nos:
Experimente a extensão do navegador:

Testador de Padrões Regex de XSD

Padrão XSD

XSD patterns match the entire string by default (implicit ^ and $). Using xspattern for accurate XSD regex matching.

Padrão convertido

Equivalente aproximado de regex em JavaScript (apenas para exibição). A correspondência real usa a biblioteca xspattern para suporte preciso a regex XSD.
^[A-Z]{2}[0-9]{3}$

String de teste

  • Resultado

    Correspondência completa
    A string inteira corresponde ao padrão
    Texto correspondente:
    AB123

    Referê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)
    \dDigit (0-9)
    \DNon-digit
    \sWhitespace
    \SNon-whitespace
    \p{L}Unicode letter category(\p{L} (with 'u' flag))
    \p{N}Unicode number category(\p{N} (with 'u' flag))
    \iXML initial name character (XSD only, supported by xspattern)
    \cXML 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|bMatch a or b

    Caracteres escapados

    \tTab
    \nNewline
    \rCarriage return
    \xhhHex character
    \uhhhhUnicode character

    Diferenças importantes em relação ao JavaScript

    No anchorsXSD patterns match entire string by default (implicit ^ and $). xspattern handles this correctly.
    No lookahead/lookbehindXSD does not support (?=...), (?!...), (?<=...), (?<!...)
    Unicode categoriesXSD supports \p{L}, \p{N}, etc. xspattern supports Unicode 15.0.
    XML name charsXSD has \i and \c for XML name characters. xspattern supports these.
    Character class subtractionXSD 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 ((?&lt;=...)). 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.