ForHosting KIT · Ferramentas para dev

Escape de metacaracteres regex

Cole file.txt (v1.0+) e receba file\.txt \(v1\.0\+\): cada ponto, parêntese, sinal de mais e outro operador ganha uma barra invertida, e o padrão passa a corresponder ao seu texto caractere por caractere. A opção inversa recupera o texto. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
Texto
file.txt (v1.0+)
Modo de cálculo
Escape
Você obtém
Resultado
file\.txt \(v1\.0\+\)
Comprimento
21
Comprimento da entrada
16
Quantidade escapada
5

Expressões regulares tratam pontos, asteriscos, colchetes e parênteses como operadores, e não como caracteres comuns. Se você colar um nome como report.v2.pdf em um padrão sem escapar, os pontos passam a significar «qualquer caractere» e a correspondência se amplia em silêncio além do nome desejado. Códigos de produto, partes locais de e-mail, globs de shell colados em caixas de busca e filtros digitados pelo usuário carregam o mesmo risco. Esta capacidade percorre cada caractere, prefixa cada metacaractere no estilo JavaScript e PCRE com uma barra invertida e devolve um fragmento que você pode inserir em um padrão maior sabendo que coincidirá caractere a caractere com a string original. O caminho inverso desescapa um padrão literal puro para recuperar o texto simples por trás de sequências como \. e \(.

Quais caracteres precisam de escape e por quê

Um motor de expressão regular lê alguns símbolos como sintaxe, e não como dados. O conjunto clássico que deve ser escapado para uma correspondência literal em construtores RegExp de JavaScript e em motores estilo PCRE inclui o ponto, o asterisco, o mais, o ponto de interrogação, o circunflexo, o cifrão, as chaves, os parênteses, a barra vertical, os colchetes e a própria barra invertida.

Sem uma barra invertida inicial, o ponto corresponde a qualquer caractere, o asterisco repete o átomo anterior, os parênteses abrem um grupo de captura e o circunflexo ou o cifrão ancoram a correspondência. Quando você só quer que o SKU do produto, o caminho de um arquivo ou uma mensagem de erro apareçam exatamente como digitados, cada um desses símbolos precisa voltar a ser dado.

Esta capacidade prefixa cada um com uma única barra invertida no caminho de escape: file.txt vira file\.txt, e uma etiqueta de versão como (v1.0+) vira \(v1\.0\+\). Letras, dígitos, espaços e a maior parte da pontuação fora desse conjunto passam inalterados.

Onde o escape literal de regex aparece no trabalho real

Interfaces de busca e filtro costumam envolver a entrada do usuário em um padrão dinâmico para destacar correspondências parciais em uma tabela; escapar antes evita que um único parêntese lance erro de sintaxe ou abra um grupo indesejado. Ferramentas de triagem de logs transformam uma linha de erro copiada em um padrão de busca que não deve tratar pontos em nomes de host ou números de versão como curingas.

Revisores de segurança convertem uma string suspeita em um fragmento literal antes de embuti-la em uma expressão de lista de permissão para que metacaracteres não alarguem a correspondência. Pipelines de localização e conteúdo às vezes armazenam fragmentos já escapados; desescapar recupera o token legível para exibição sem reintroduzir sintaxe ativa. Cursos de programação usam um escapador ao vivo para mostrar por que «qualquer caractere» e «o caractere ponto» não são a mesma ideia em uma lição de regex.

Se você precisa executar matches e substituições, explicar um padrão em prosa, gerar um padrão a partir de uma descrição ou codificar um URL em porcentagem, essas são intenções de busca e landings distintas — esta página cobre apenas escape e desescape literal de metacaracteres.

Filtros de usuário seguros em buscas

Escape o que o usuário digita antes de envolver em um regex dinâmico para que pontos e parênteses nunca virem operadores nem erros de sintaxe.

Quais metacaracteres esta ferramenta escapa?

O conjunto literal no estilo JavaScript / PCRE: . * + ? ^ $ { } ( ) | [ ] e a barra invertida. Cada um é prefixado com \ para que o fragmento coincida exatamente com os caracteres originais.

O que acontece com entrada inválida?

Text ausente, mode desconhecido, strings longas demais, barra final, escapes não meta como \d e metacaracteres nus no caminho unescape são rejeitados. Falhas de validação não são cobradas.

Isto executa ou testa uma expressão regular?

Não. Apenas escapa e desescapa para correspondência literal. Use um testador de regex dedicado se precisar de match, replace ou captura de grupos.

Quanto custa?

A ferramenta do navegador é gratuita e roda localmente.

Por que um ponto sem escape encontra mais do que eu digitei?

Numa expressão regular o ponto significa qualquer caractere, então report.v2.pdf também encontraria nomes com outros caracteres nesses lugares. O escape transforma cada ponto em um ponto de verdade, e a busca fica exatamente no texto que você quis.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/enc/regex-escape

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/enc/regex-escape \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"file.txt (v1.0)"}'
{
  "text": "file.txt (v1.0)"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.regex_escape",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

A ferramenta gratuita do navegador e a API paga compartilham um núcleo determinístico ao preço publicado de US$ 0,002 por item bem-sucedido.

O que você envia e o que recebe de volta

Envie um campo de string obrigatório chamado text e um campo opcional mode com valor escape ou unescape. Escape percorre a entrada, conta quantos metacaracteres foram prefixados e devolve result como o fragmento principal de padrão seguro. Text ausente, valores de mode não suportados e strings maiores que o máximo documentado também falham sem consumir saldo pré-pago. Quando mode é omitido, escape é o padrão e um único payload ainda faz trabalho útil. Aliases como encode e decode são aceitos para equipes já ligadas a outras ferramentas de codificação do catálogo. Unescape inverte apenas padrões literais puros: uma barra invertida deve ser seguida de um metacaractere ou de outra barra; uma barra final sozinha, um escape como \d ou \n que não faz parte do conjunto literal, ou um metacaractere nu que nunca foi escapado falham com invalid_input e uma mensagem em inglês que indica o índice. Respostas de sucesso ecoam mode e o text original, incluem length e input_length, informam escaped_count, listam em ordem os metacaracteres únicos tocados e anexam um rótulo curto do conjunto de regras JavaScript e PCRE. O preço das chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item.

Onde o escape literal de regex aparece no trabalho real

Como esta capacidade é um motor parse puro, o preço da API permanece na base publicada de US$ 0,002 por item bem-sucedido e a validação falha não consome saldo.

Padrões golden estáveis em CI

Converta nomes de arquivo e strings de erro em fragmentos seguros para literais que os testes podem embutir sem manter barras à mão.

Recuperar texto simples de fixtures

Desescape um padrão literal puro guardado em um arquivo de configuração para mostrar o código de produto ou o caminho original em ferramentas administrativas.

É possível converter nos dois sentidos?

Sim. mode=escape (padrão; também aceita encode) transforma texto simples em um padrão seguro para literais; mode=unescape (também aceita decode) inverte um padrão literal puro de volta a texto simples.

Ver a documentação completa do KIT →