Validação de Dados com Expressões Regulares na Biblioteca Xmtool para .NET Core

A biblioteca Xmtool oferece um conjunto robusto de ferramentas para simplificar o desenvolvimento em .NET Core. Entre suas funcionalidades, destaca-se o módulo de expressões regulares, projetado para facilitar a validação de formatos de dados comuns, desde padrões industriais até requisitos específicos de caracteres.

Categorias de Validação

O utilitário organiza as validações em três grupos principais:

  • Formatos Comuns: Celulares, telefones fixos, e-mails, URLs, endereços IP e números de identidade (padrão chinês).
  • Tipos de Caracteres: Verificações de idiomas (inglês e chinês), combinações alfanuméricas e nomes de usuário.
  • Tipos Numéricos: Inteiros, números naturais, números positivos e decimais com precisão configurável.

1. Validações de Formatos Comuns

Validação de Telefone Celular

O método IsMobile verifica se a string segue o formato de 11 dígitos iniciado por 1.

// Exemplo: Validando um número de celular
bool ehCelularValido = Xmtool.Regex().IsMobile("13800001111");

Validação de Telefone Fixo

O método IsTelephone identifica formatos padrão de telefonia fixa.

// Exemplo: Validando um telefone fixo com DDD
var resultadoFixo = Xmtool.Regex().IsTelephone("021-12345678");

Validação de E-mail

O IsEmail confirma se a entrada está de acordo com a estrutura padrão de endereços eletrônicos.

// Verificação de endereço de correio eletrônico
bool emailConfirmado = Xmtool.Regex().IsEmail("contato@desenvolvedor.com");

Validação de URL

O método IsUrl suporta protocolos como http, https e ftp.

// Validando um link de internet
bool urlAtiva = Xmtool.Regex().IsUrl("https://dotnet.microsoft.com");

Validação de Endereço IP

Focado no padrão IPv4 (ex: 127.0.0.1).

// Checando validade de IP local
var ipValido = Xmtool.Regex().IsIP("10.0.0.1");

Validação de Identidade (ID Card)

Específico para o formato de 18 dígitos do documento de identidade da China.

// Validando registro de identidade
bool idValido = Xmtool.Regex().IsIDCard("110101199001011234");

2. Validações de Caracteres e Idiomas

Caracteres Alfabéticos (Inglês)

Existem métodos para verificar se a string contém apenas letras, ou especificamente maiúsculas/minúsculas.

// Apenas letras
bool soLetras = Xmtool.Regex().IsEnglish("DotNetCore");

// Apenas minúsculas
bool tudoMinusculo = Xmtool.Regex().IsLowercaseEnglish("xmtool");

// Apenas maiúsculas
bool tudoMaiusculo = Xmtool.Regex().IsCapitalEnglish("SDK");

Caracteres Chineses

Verifica a presença exclusiva ou parcial de ideogramas chineses.

// Apenas ideogramas
bool textoChines = Xmtool.Regex().IsChinese("你好");

Combinações Alfanuméricas

Permite validar se a string contém letras e números de forma exclusiva ou obrigatória.

// Letras OU números
bool alfaNumerico = Xmtool.Regex().IsEnglishOrNumber("User2024");

// Deve conter letras E números
bool requerAmbos = Xmtool.Regex().IsEnglishAndNumber("Pass123");

Nomes de Usuário (Account)

Valida se o nome começa com uma letra e contém apenas caracteres alfanuméricos ou sublinhados (underscore).

// Validação de login de sistema
bool usuarioValido = Xmtool.Regex().IsAccount("admin_dev01");

3. Validações Numéricas

Validação de Números Gerais

Verifica se a string representa qualquer valor numérico válido (inteiro ou decimal).

// Verificando se é um número
bool ehNumero = Xmtool.Regex().IsNumber("1250.75");

Inteiros e Números Naturais

Diferencia entre enteiros (incluindo negativos), naturais (zero e positivos) e innteiros positivos.

// Inteiro qualquer
bool inteiroGeral = Xmtool.Regex().IsInteger("-50");

// Número natural (0, 1, 2...)
bool ehNatural = Xmtool.Regex().IsNaturalInteger("0");

// Inteiro positivo (> 0)
bool ehPositivo = Xmtool.Regex().IsPositiveInteger("100");

Números Decimais e Precisão

O método IsDecimal pode validar se um número é decimal ou se possui uma quantidade exata de casas decimais.

// Qualquer decimal
bool ehDecimal = Xmtool.Regex().IsDecimal("10.5");

// Decimal com exatamente 2 casas
bool precisaoMoeda = Xmtool.Regex().IsDecimal("99.90", 2);

Tags: .NET Core C# Regex Xmtool backend

Publicado em 6-18 02:58