O que faz
A ferramenta de escape de strings converte texto para uma forma que pode ficar dentro de um literal de string e converte strings escapadas de volta em texto comum. Ela suporta nove destinos: JSON, JavaScript, Java e C#, Python, literais de string SQL, campos CSV, texto e atributos XML, expressões regulares e comandos de shell POSIX. Cada um segue as regras da sua linguagem, então o resultado pode ser colado direto no código sem erros de sintaxe.
Usos comuns: colocar uma mensagem de várias linhas ou um caminho do Windows num arquivo de configuração JSON, embutir um trecho de HTML numa string JavaScript, colocar aspas num nome de arquivo com espaços para um script de shell ou transformar um termo de busca literal como price (USD) numa expressão regular que o encontre exatamente.
Como usar
- Escolha Escapar ou Desescapar.
- Escolha a linguagem ou o formato.
- Cole o texto na entrada ou clique em Exemplo. O resultado é atualizado enquanto você digita.
- Copie a saída ou clique em Usar como entrada para inverter a conversão e conferir se volta ao original.
Em JSON, JavaScript, Java/C# e Python você também pode escapar todos os caracteres não ASCII, obtendo uma string ASCII pura que sobrevive a qualquer codificação de arquivo.
Exemplo
A mesma linha escapada para destinos diferentes:
Input: He said "hi" in C:\Temp
JSON: He said \"hi\" in C:\\Temp
SQL: He said "hi" in C:\Temp (only ' is doubled)
Regex: He said "hi" in C:\\Temp
Shell: 'He said "hi" in C:\Temp'
Regras de cada formato
- JSON: escapa aspas, barras invertidas e caracteres de controle, exatamente como
JSON.stringify. - JavaScript: também escapa aspas simples, crases, tabulações verticais e os separadores de linha U+2028 e U+2029.
- Java / C#: escapes com barra invertida e
\uXXXX; ao desescapar também aceita escapes octais do Java e\xe\Udo C#. - Python: escapes com barra invertida,
\x,\ue\U; escapes desconhecidos ficam como estão. - SQL: duplica as aspas simples para literais de string SQL padrão.
- CSV: envolve o valor em aspas duplas e duplica as aspas internas quando ele contém vírgula, aspas, quebra de linha ou espaços nas pontas.
- XML: substitui as cinco entidades predefinidas; ao desescapar também decodifica referências numéricas de caracteres.
- Expressão regular: coloca uma barra invertida antes de cada caractere com significado especial, para o padrão casar com o texto literalmente.
- Shell: envolve o valor em aspas simples, que desativam qualquer expansão em shells POSIX, e escreve aspas internas como
'\''.
Perguntas frequentes
› O que significa escapar uma string?
Alguns caracteres têm significado especial dentro de um literal de string, como a aspa que o encerra ou uma quebra de linha. Escapar os substitui por uma sequência segura, geralmente uma barra invertida seguida de uma letra, para que a string possa ser colada em código, numa consulta ou num arquivo sem quebrá-lo.
› Devo colar também as aspas em volta da string?
Não. Cole só o conteúdo. O resultado escapado é o que vai entre as aspas no seu código. Em CSV e shell, que colocam aspas no valor inteiro, a ferramenta adiciona as aspas externas quando necessário.
› Escapar em SQL basta para evitar SQL injection?
Duplicar as aspas simples gera um literal de string válido, útil ao escrever uma consulta à mão ou preparar um script de migração. No código da aplicação use sempre consultas parametrizadas ou prepared statements em vez de montar SQL com strings.
› Por que o desescape acusa uma sequência de escape desconhecida?
Cada linguagem aceita um conjunto diferente de escapes. O JSON, por exemplo, não tem \x nem \0, então a ferramenta mostra a posição da primeira sequência que a linguagem escolhida rejeitaria. O Python mantém escapes desconhecidos como \d sem alteração, exatamente como o interpretador Python.
› Meu texto é enviado?
Não. Escapar e desescapar acontece no seu navegador e nada é enviado a um servidor.