post

Limpar e Formatar Texto para URL ou Nome de Arquivo com Javascript

Publicado em: 07/03/2024 / Atualizado em: 07/03/2024

Categorias: BlogJavaScript (JS)JS

Se você precisa converter um nome ou frase em algo compatível com a URL ou para gerar nome de arquivo para realizar o upload desse arquivo com uma formatação mais compatível com a web, esse código abaixo pode te ajudar:

function formatarTextoURL(texto) {
    const mapaAcentos = {
        'á': 'a', 'à': 'a', 'ã': 'a', 'â': 'a', 'ä': 'a',
        'é': 'e', 'è': 'e', 'ê': 'e', 'ë': 'e',
        'í': 'i', 'ì': 'i', 'î': 'i', 'ï': 'i',
        'ó': 'o', 'ò': 'o', 'õ': 'o', 'ô': 'o', 'ö': 'o',
        'ú': 'u', 'ù': 'u', 'û': 'u', 'ü': 'u',
        'ç': 'c', 'ñ': 'n',
        'Á': 'A', 'À': 'A', 'Ã': 'A', 'Â': 'A', 'Ä': 'A',
        'É': 'E', 'È': 'E', 'Ê': 'E', 'Ë': 'E',
        'Í': 'I', 'Ì': 'I', 'Î': 'I', 'Ï': 'I',
        'Ó': 'O', 'Ò': 'O', 'Õ': 'O', 'Ô': 'O', 'Ö': 'O',
        'Ú': 'U', 'Ù': 'U', 'Û': 'U', 'Ü': 'U',
        'Ç': 'C', 'Ñ': 'N'
    };

    texto = texto.split('').map(letra => mapaAcentos[letra] || letra).join('');
    texto = texto.toLowerCase();
    texto = texto = texto.replace(/[\s\/]+/g, '-').replace(/[^a-z0-9-]/g, '').replace(/-+/g, '-');

    return texto;
}

Para executar o código de formatação de nome para URL ou Arquivo, basta executar a função com o texto dentro, como no exemplo abaixo:

formatarTextoURL('Texto de teste para adicionar na seção');

O retorno será exatamente este:

texto-de-teste-para-adicionar-na-secao

No exemplo acima, os espaços foram substituídos por hífen (-), alem de deixar todo o texto em minusculo e retirar caracteres especiais como ç e acentos.

Veja a imagem abaixo do teste executado no console do navegador:

image 10

Publicações recomendadas:


Inscreva-se em Nossa News:

Seja notificando sempre que tiver conteúdo novo disponível no meu canal do Youtube ou artigo no meu Blog.

Bruno Devs News


Link Curto para Compartilhamento

Compartilhe esse conteudo nas redes sociais ou por mensagem usando o link curto abaixo. Basta clicar em cima do link para copiar.

bruno.art.br/pb/4646

ID de Referência: 4646

Sugira uma publicação

Envie uma mensagem e sugira um publicação sobre um assunto que tenha dificuldades de resolver.

Clique aqui e entre em contato


Comentários