catbean.pages.dev

Como verificar CPF usando regex no terminal?

Verificar a validade de um CPF (Cadastro de Pessoas Físicas) é uma tarefa comum em sistemas de automação e processamento de dados. Utilizar expressões regulares (regex) no terminal é uma abordagem rápida e eficiente para validar o formato de um CPF, garantindo que ele siga o padrão correto antes de aplicar algoritmos de validação mais complexos.

Pré-requisitos

Entendendo o padrão de CPF

Um CPF válido no Brasil tem o formato XXX.XXX.XXX-XX, onde X é um dígito de 0 a 9. A expressão regular deve considerar tanto o formato com pontos e hífen quanto o formato apenas numérico (11 dígitos).

Expressão regular para validação de CPF

A regex a seguir valida o formato de um CPF, permitindo tanto o formato com pontuação quanto o formato apenas numérico:

^\d{3}\.\d{3}\.\d{3}-\d{2}$|^(\d{11})$

Esta expressão regular funciona da seguinte forma:

Usando a regex no terminal

Para verificar se um CPF está no formato correto, você pode usar o comando grep ou egrep (ou grep -E) no terminal. Veja como:

echo "123.456.789-09" | grep -E '^\d{3}\.\d{3}\.\d{3}-\d{2}$|^(\d{11})$'

Se o CPF estiver no formato correto, o comando retornará a string digitada. Se não estiver, não haverá retorno.

Script para validação de CPF

Para automatizar a validação de múltiplos CPFs, você pode criar um script shell. Veja um exemplo:

#!/bin/bash

# Função para validar CPF
validar_cpf() {
    local cpf="$1"
    if [[ "$cpf" =~ ^\d{3}\.\d{3}\.\d{3}-\d{2}$|^(\d{11})$ ]]; then
        echo "CPF $cpf: VÁLIDO (formato)"
    else
        echo "CPF $cpf: INVÁLIDO (formato)"
    fi
}

# Testando a função
validar_cpf "123.456.789-09"
validar_cpf "12345678909"
validar_cpf "123.456.789-0"

Salve o script em um arquivo (ex: validar_cpf.sh), dê permissão de execução (chmod +x validar_cpf.sh) e execute-o (./validar_cpf.sh).

Exemplo Prático

CPF de Entrada Formato Válido? Saída Esperada
123.456.789-09 Sim CPF 123.456.789-09: VÁLIDO (formato)
12345678909 Sim CPF 12345678909: VÁLIDO (formato)
123.456.789-0 Não CPF 123.456.789-0: INVÁLIDO (formato)
12345 Não CPF 12345: INVÁLIDO (formato)

Conclusão

Com este método, você pode rapidamente verificar o formato de CPFs diretamente no terminal, garantindo que os dados estejam estruturados corretamente antes de aplicar validações mais complexas. A combinação de regex e scripts shell oferece uma solução eficiente e escalável para processamento de dados em larga escala.