# Remover acentos do texto

> Esta ferramenta remove os acentos e a cedilha de um texto, trocando cada letra pela versão sem acento: á, à, â e ã viram a, ç vira c, ü vira u. O restante, como pontuação, números e emojis, fica igual. É útil para gerar nomes de arquivo, logins, comparar nomes e preparar dados para sistemas que não aceitam acentos.

- Endereço oficial: https://pradev.com.br/remover-acentos-do-texto
- Categoria: Texto
- Tipo: Utilitário
- Atualizado em: 2026-10-01
- Autor: Leonardo Gaertner (https://pradev.com.br/sobre)
- Preço: grátis, sem cadastro. O processamento acontece no navegador de quem usa.

## Como usar

1. Digite ou cole o texto.
2. Se quiser manter o ç, marque a opção.
3. Copie o resultado.

## Como funciona

No Unicode, uma letra acentuada pode ser decomposta em letra base mais um sinal combinante: á é a + acento agudo. A ferramenta faz essa decomposição (a forma NFD) e apaga só os sinais de acentuação, o que funciona para o português e para os outros idiomas que usam o alfabeto latino, como ü, ñ e å.

Algumas letras não se decompõem e são trocadas diretamente: ø vira o, æ vira ae, ß vira ss e ł vira l. Letras de outros alfabetos, como o grego e o cirílico, não viram letras latinas: perdem só os acentos, se tiverem.

### Exemplo

```text
Texto: São Paulo, Ceará e Piauí
Sem acentos: Sao Paulo, Ceara e Piaui
```

## Em código

Para remover acentos em código, decomponha o texto na forma NFD, que separa a letra do acento, e apague os acentos. É o mesmo princípio da ferramenta.

```javascript
// Remove acentos e cedilha: "Ação" vira "Acao".
function removerAcentos(texto) {
  // NFD separa a letra do acento (á vira a + ´); depois, os acentos saem.
  return texto.normalize('NFD').replace(/[̀-ͯ]/g, '').normalize('NFC');
}

console.log(removerAcentos('São Paulo, Ceará e Piauí')); // Sao Paulo, Ceara e Piaui
```

_JavaScript_

```python
import unicodedata


def remover_acentos(texto: str) -> str:
    """Remove acentos e cedilha: "Ação" vira "Acao"."""
    # NFD separa a letra do acento (á vira a + ´); depois, os acentos saem.
    decomposto = unicodedata.normalize("NFD", texto)
    sem_acentos = "".join(c for c in decomposto if not unicodedata.combining(c))
    return unicodedata.normalize("NFC", sem_acentos)


print(remover_acentos("São Paulo, Ceará e Piauí"))  # Sao Paulo, Ceara e Piaui
```

_Python_

```php
<?php
// Remove acentos e cedilha: "Ação" vira "Acao". Usa a extensão intl.
function removerAcentos(string $texto): string
{
    // NFD separa a letra do acento (á vira a + ´); depois, os acentos saem.
    $decomposto = Normalizer::normalize($texto, Normalizer::FORM_D);
    return Normalizer::normalize(preg_replace('/\p{Mn}/u', '', $decomposto), Normalizer::FORM_C);
}

echo removerAcentos('São Paulo, Ceará e Piauí'), PHP_EOL; // Sao Paulo, Ceara e Piaui
```

_PHP. Precisa da extensão intl, que costuma vir ativada._

## Perguntas frequentes

### Remover acentos basta para criar um link ou nome de arquivo?

Não. Também é preciso trocar espaços por hífen, passar para minúsculas e tirar símbolos. O guia sobre como gerar slug de URL, na seção de guias do PraDev, mostra o passo a passo em JavaScript, Python e PHP.

### Por que comparar nomes sem acento?

Porque o mesmo nome pode chegar escrito de jeitos diferentes, como José e Jose. Comparar as versões sem acento e em minúsculas evita cadastros duplicados e buscas que não acham nada.

### O texto que eu colo é enviado para algum lugar?

Não. A troca é feita no seu navegador, e o texto não sai do seu dispositivo.

## Fontes

- [Unicode UAX #15: formas de normalização (NFC e NFD)](https://www.unicode.org/reports/tr15/)

## Guias

- [Como gerar slug de URL a partir de texto com acentos](https://pradev.com.br/guias/como-gerar-slug-de-url-com-acentos): Como transformar um título com acentos em slug de URL (Ação e Reação vira acao-e-reacao) em JavaScript, Python e PHP, e os cuidados com slugs repetidos.

## Ferramentas relacionadas

- [Conversor de Maiúsculas e Minúsculas](https://pradev.com.br/conversor-de-maiusculas-e-minusculas): Converta texto para MAIÚSCULAS, minúsculas, Título ou Frase, e nomes para camelCase, snake_case e kebab-case. Grátis e no navegador.
- [Remover Espaços](https://pradev.com.br/remover-espacos): Remova espaços duplos, espaços no começo e no fim das linhas, espaços invisíveis e linhas em branco. Grátis, no navegador.
- [Contador de Caracteres](https://pradev.com.br/contador-de-caracteres): Conte caracteres, com e sem espaços, palavras, linhas e parágrafos enquanto digita. Emojis e acentos contam certo. Grátis, no navegador.
- [Codificar e Decodificar URL](https://pradev.com.br/url-encode-decode): Codifique e decodifique URL (percent-encoding) online: trechos de parâmetros ou URL completa, com acentos. Grátis, direto no navegador.
- [Colocar em Ordem Alfabética](https://pradev.com.br/colocar-em-ordem-alfabetica): Coloque listas em ordem alfabética, de A a Z ou de Z a A, com acentos no lugar certo e números em ordem numérica. Por linha ou vírgula.
- [Contador de Ocorrência de Palavra](https://pradev.com.br/contador-de-ocorrencia-de-palavra): Veja quantas vezes cada palavra aparece em um texto, da mais usada para a menos usada, ou conte uma palavra específica. Grátis.
