NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
Validador Regex de GUID em Javascript

Validador Regex de GUID em Javascript

Valide GUIDs em JavaScript facilmente com nosso Validador Regex de GUID em JavaScript. Garanta que cada identificador siga o formato correto de 8-4-4-4-12 caracteres hexadecimais, ideal para desenvolvimento de APIs, validação de formulários e gerenciamento de banco de dados. Combine esta ferramenta com nosso JavaScript Regex Tester para depuração de padrões ou com o Validador de Email para validar credenciais de usuário em um só lugar.

Validador Regex de GUID em Javascript - Documentação

O que é um GUID (Globally Unique Identifier)?

Um GUID é um identificador único de 128 bits comumente usado em bancos de dados, desenvolvimento de software e APIs para garantir unicidade global. É tipicamente formatado como:

xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Cada x é um caractere hexadecimal (0 a 9, a a f). Por exemplo: e4f50c60-4d42-11ec-81d3-0242ac130003.

JavaScript pode usar expressões regulares (regex) para validar se uma determinada string corresponde a essa estrutura.

Padrão Regex de GUID para JavaScript

Aqui está o padrão regex que corresponde a um GUID válido:

^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$

Explicação:

  • "^": Ancora o padrão no início e fim da string.

  • "[0-9a-fA-F]{8}": Primeiro bloco de 8 caracteres hex.

  • "-": Um hífen literal separa cada bloco.

  • "[0-9a-fA-F]{4}": Segundo bloco de 4 caracteres hex.

  • "[1-5][0-9a-fA-F]{3}": Terceiro bloco - campo de versão, começando com um dígito de 1 a 5, seguido de 3 caracteres hex.

  • "[89abAB][0-9a-fA-F]{3}": Quarto bloco - campo de variante, começando com 8, 9, a ou b, depois 3 chars hex.

  • "[0-9a-fA-F]{12}": Bloco final de 12 caracteres hex.

Chaves Opcionais na Validação de GUID

Às vezes, você pode encontrar GUIDs entre chaves, como {3f2504e0-4f89-11d3-9a0c-0305e82c3301}, um estilo comum em alguns ambientes Microsoft. Se sua aplicação precisar aceitar GUIDs com ou sem essas chaves, use:

^[{]?[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$

Como Validar GUIDs em JavaScript

Aqui está um trecho de código completo:

function isValidGUID(guid) {
  const guidRegex = /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-5][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$/;
  return guidRegex.test(guid);
}

// Test example const testGUID = "a987fbc9-4bed-3078-cf07-9141ba07c9f3"; console.log(Is "${testGUID}" valid?, isValidGUID(testGUID));

Tratando Strings Vazias ou Nulas

Antes de executar a validação regex, a função primeiro verifica se a string de entrada está vazia ou nula. Se estiver, retorna false imediatamente, garantindo que apenas valores não vazios sejam considerados para validação posterior.

Desempenho: Complexidade de Tempo e Espaço

A validação de GUID com esta expressão regular é executada em tempo linear em relação ao comprimento da string de entrada, O(N). A validação usa uma quantidade constante de memória extra, O(1), independente do tamanho da entrada.

Exemplos

GUID Válido

  • 3f2504e0-4f89-11d3-9a0c-0305e82c3301

GUIDs Inválidos

  • 3f2504e04f8911d39a0c0305e82c3301 (Hífens ausentes)

  • 3f25-04e0-4f89-11d3-9a0c (Muito curto)

  • ZZZ504e0-4f89-11d3-9a0c-0305e82c3301 (Caracteres hex inválidos)

Usos da Validação Regex de GUID

  • IDs de Banco de Dados: Garanta identificadores únicos para linhas do banco de dados.

  • Requisições de API: Rastreie identificadores de requisição ou tokens de sessão com segurança.

  • Validação de Entrada de Formulário: Confirme o formato GUID para campos enviados via formulários.

  • Sistemas Distribuídos: Identifique recursos de forma única entre sistemas ou serviços.

Dicas Profissionais

  • Sempre converta GUIDs para minúsculas ou maiúsculas antes da validação se sua aplicação impõe um estilo específico.

  • Considere validação no lado do cliente e do servidor para evitar adulteração ou entradas malformadas.

  • Se usar geração aleatória de GUID, teste frequentemente com o Validador de GUID para garantir consistência de formato.

  • Não confunda UUID v4 e GUID: eles compartilham formatos mas diferem na lógica de geração.

Recursos de Regex Essenciais

  • [abc]: corresponde a um único caractere de a, b ou c

  • [^abc]: corresponde a qualquer caractere exceto a, b ou c

  • \d: corresponde a qualquer dígito

  • \w: corresponde a qualquer caractere de palavra (letras, dígitos ou sublinhado)

  • (?:...): grupo sem captura

  • (...): grupo de captura

  • \b: limite de palavra

Sabores de Regex Suportados

  • PCRE2 (PHP maior ou igual a 7.3)

  • PCRE (PHP mais antigo)

  • ECMAScript (JavaScript)

  • Python

  • Golang

  • Java 8

  • .NET 7.0 (C#)

  • Rust

Ferramentas Adicionais Úteis

  • Gerador de Código: Crie instantaneamente trechos JavaScript para integrar seu regex GUID em seus projetos.

  • Depurador de Regex: Percorra suas expressões regulares para identificar erros e refinar seus padrões.

  • Exportar Correspondências: Exporte seus resultados de correspondência regex para documentação ou análise posterior.

  • Benchmark de Regex: Meça o desempenho do regex para garantir que sua validação permaneça eficiente mesmo em escala.

Frequently Asked Questions

O que torna uma string um GUID válido?

Um GUID válido tem 36 caracteres incluindo hífens e segue uma estrutura hexadecimal estrita com regras específicas de versão e variante.

Este regex é específico para UUID versão 4?

O regex suporta todas as versões UUID/GUID (1 a 5) com base no dígito de versão no terceiro segmento.

JavaScript pode gerar GUIDs válidos?

JavaScript não gera GUIDs nativamente, mas você pode usar bibliotecas como uuid para geração e depois validá-los com esta ferramenta.

Qual é a diferença entre GUID e UUID?

Eles são quase idênticos em formato. GUID é a implementação da Microsoft do UUID.

Devo armazenar GUIDs em minúsculas?

Depende do seu sistema, mas é uma boa prática normalizar para minúsculas para evitar incompatibilidades sensíveis a maiúsculas.

Teste suas APIs hoje!

Escreva em português simples, o Qodex transforma em testes seguros e prontos para execução.