Ferramentas / Escapar e desescapar strings
Escapar e desescapar strings
Escape ou desescape textos para JSON, JavaScript, URL, HTML, expressões regulares e SQL.
Processamento local: nada do que você digita sai do seu navegador.
Como usar
Escolha o formato, a operação (escapar ou desescapar) e cole o texto. O resultado aparece enquanto você digita.
O que cada formato faz
- JSON: escapa aspas, barras e quebras de linha para caber dentro de uma string JSON.
- JavaScript: prepara o texto para strings com aspas simples ou duplas (
\n,\',\xNN). - URL: percent-encoding de componente (
encodeURIComponent). - HTML: troca
& < > " 'por entidades. - Regex: adiciona barra antes de caracteres especiais para casar o texto literalmente.
- SQL: dobra aspas simples. Serve só para estudo: em código real use consultas parametrizadas.
Como implementar em código
Exemplos prontos para usar no seu projeto.
// Escapar para dentro de uma string JSON (sem as aspas externas)
const escaparJson = (s) => JSON.stringify(s).slice(1, -1);
const desescaparJson = (s) => JSON.parse('"' + s + '"');
// Escapar para usar em uma RegExp
const escaparRegex = (s) => s.replace(/[.*+?^${}()|[\]\\\/-]/g, '\\$&');
console.log(escaparJson('Ele disse: "oi"\n')); // Ele disse: \"oi\"\n
console.log(escaparRegex('R$ (10)')); // R\$ \(10\)import json, re
def escapar_json(s: str) -> str:
return json.dumps(s, ensure_ascii=False)[1:-1]
def desescapar_json(s: str) -> str:
return json.loads('"' + s + '"')
print(escapar_json('Ele disse: "oi"\n')) # Ele disse: \"oi\"\n
print(re.escape("R$ (10)")) # R\$\ \(10\)package main
import (
"encoding/json"
"fmt"
"regexp"
)
func escaparJson(s string) string {
b, _ := json.Marshal(s)
return string(b[1 : len(b)-1]) // remove as aspas externas
}
func main() {
fmt.Println(escaparJson("Ele disse: \"oi\"\n"))
fmt.Println(regexp.QuoteMeta("R$ (10)")) // R\$ \(10\)
}import 'dart:convert';
String escaparJson(String s) {
final j = jsonEncode(s);
return j.substring(1, j.length - 1);
}
void main() {
print(escaparJson('Ele disse: "oi"\n'));
print(RegExp.escape(r'R$ (10)')); // R\$ \(10\)
}import java.util.regex.Pattern;
public class Escape {
// Escape mínimo para JSON (use Jackson/Gson em produção)
static String escaparJson(String s) {
return s.replace("\\", "\\\\").replace("\"", "\\\"")
.replace("\n", "\\n").replace("\r", "\\r").replace("\t", "\\t");
}
public static void main(String[] args) {
System.out.println(escaparJson("Ele disse: \"oi\"\n"));
System.out.println(Pattern.quote("R$ (10)")); // \QR$ (10)\E
}
}<?php
// JSON (remove as aspas externas)
echo substr(json_encode("Ele disse: \"oi\"\n", JSON_UNESCAPED_UNICODE), 1, -1);
// Regex (informe o delimitador usado)
echo preg_quote('R$ (10)', '/'); // R\$ \(10\)using System;
using System.Text.Json;
using System.Text.RegularExpressions;
string j = JsonSerializer.Serialize("Ele disse: \"oi\"\n");
Console.WriteLine(j.Substring(1, j.Length - 2)); // sem as aspas externas
Console.WriteLine(Regex.Escape("R$ (10)")); // R\$\ \(10\)Perguntas frequentes
Escapar é o mesmo que criptografar?
Não. Escapar apenas troca caracteres especiais por sequências seguras. Qualquer um consegue reverter, e não há segredo envolvido.
Posso usar o escape de SQL para me proteger de SQL injection?
Não é recomendado. A proteção correta é usar consultas parametrizadas (prepared statements), que separam código e dados.
Meus textos são enviados para algum servidor?
Não. Tudo é processado no seu navegador.
Veja também
Precisa de um sistema ou app sob medida?
A VcInova desenvolve software, aplicativos e integrações para empresas de todo o Brasil.
Fale com a VcInova