Escapar e desescapar strings
Escape texto para uma string JSON ou JavaScript, uma string SQL, um campo CSV, uma expressão regular ou uma palavra de shell, ou desfaça o escape.
Exemplos de código
Copie estes exemplos para o seu próprio projeto. Cada um usa apenas a biblioteca padrão da linguagem, por isso não há nada para instalar.
const text = 'He said "hi"'
console.log(JSON.stringify(text).slice(1, -1))O que faz
Escapa texto para que caiba numa string JSON ou JavaScript, numa string SQL, num campo CSV, numa expressão regular ou numa palavra de shell, e desfaz o escape. Cada formato escapa exatamente os caracteres de que precisa e nenhum outro.
Como usar
- Digite ou cole texto, ou solte um arquivo de texto.
- Escolha para onde o texto vai (String JSON, String JavaScript, String SQL, Campo CSV, Expressão regular ou Palavra de shell) e se Escapar ou Desescapar.
- Copie ou baixe o resultado, ou use Usar a saída como entrada para torná-lo a próxima entrada.
Exemplos
Escapar He said "it's fine" e uma quebra de linha:
JSON dá He said \"it's fine\"\n, SQL dá He said "it''s fine" e o shell dá 'He said "it'\''s fine"'.
Bom saber
- JSON e JavaScript escapam a barra invertida, a aspa que envolve a string, quebras de linha e caracteres de controle. Desescapar lê
\n,\t,\uXXXXe semelhantes; JavaScript também lê\xHHe\u{…}. - SQL duplica a aspa simples. Isso vale para um literal escrito à mão; para código, use parâmetros vinculados.
- Um campo CSV só fica entre aspas se tiver vírgula, aspa ou quebra de linha, e as aspas dentro são duplicadas.
- Uma palavra de shell fica entre aspas simples, e uma aspa simples dentro é escrita
'\'', para que nada seja expandido.
Por que cada formato escapa de forma diferente?
Cada sintaxe tem seus caracteres especiais. Uma string JSON precisa de aspas, barras invertidas e caracteres de controle escapados. Uma string SQL só precisa da aspa simples duplicada. Um campo CSV é envolvido em aspas se tiver vírgula, aspa ou quebra de linha. Uma expressão regular escapa seus operadores, e uma palavra de shell fica entre aspas simples para que nada seja expandido.
Perguntas frequentes
Escapar basta para impedir injeção de SQL?
Não. Duplicar aspas é o que esta ferramenta mostra e serve para um literal numa consulta escrita à mão, mas não é defesa para código. Passe os valores como parâmetros vinculados, para que nunca façam parte do texto SQL.
Qual é a diferença entre uma string JSON e uma JavaScript?
JSON permite poucos escapes e sempre usa aspas duplas. JavaScript permite também aspas simples, \x41, e escapes nos dois estilos de aspas. Desescapar como JSON recusa, portanto, sequências que o JavaScript aceitaria.
Esta ferramenta envia meu texto para algum lugar?
Não. Tudo acontece no seu navegador. O que você digita nunca é enviado aos nossos servidores.