Palavras-chave e regex

Bloquear contas do Twitter por palavra-chave ou regex (e por que palavras silenciadas não bastam)

A aba Filtros com palavras-chave, um regex de lookahead e a lista de permissões
Resposta rápida
  • As palavras silenciadas do X escondem publicações. Nunca bloqueiam, e nunca olham nome de exibição, nome de usuário ou bio.
  • O X Spam Blocker transforma uma palavra-chave num candidato a bloqueio — você confirma, e então ele bloqueia.
  • Compare primeiro o nome de usuário e o nome de exibição; o texto da publicação é o campo menos preciso, por uma margem larga.
  • Para qualquer palavra que gente inocente também usa, exija uma segunda condição com um regex de lookahead.

"Bloquear contas por palavra-chave" parece um ajuste que o X deveria ter, e não tem. O que o X tem são palavras silenciadas, que são outra coisa e resolvem outro problema. Isto é sobre onde essa linha cai, e sobre escrever regras de palavra-chave e regex que pegam spam sem pegar as pessoas que estão falando dele.

O que as palavras silenciadas de fato fazem

As palavras silenciadas do X ficam em Configurações → Privacidade e segurança → Silenciar e bloquear → Palavras silenciadas. Você adiciona uma palavra ou frase, escolhe se vale para a linha do tempo, para as notificações ou para as duas, se vale só para pessoas que você não segue, e por quanto tempo.

Dentro desses limites funciona bem, e é a ferramenta certa para um assunto de que você está cansado. Mas note o que ela não toca:

  • Ela esconde publicações. A conta fica intocada — ainda pode seguir você, responder, citar e enviar mensagem.
  • Ela compara o texto das publicações. Não compara nomes de exibição, nomes de usuário nem bios, que é onde contas de bot se anunciam com mais confiança.
  • Não há como transformar uma correspondência em qualquer ação que não seja esconder.
  • Silenciar é por palavra e manutenção permanente: um script novo de spam pede uma palavra nova, para sempre.

Silenciar palavra-chave ou bloquear por palavra-chave

Palavras silenciadas do XBloqueio por palavra-chave (esta extensão)
Efeito na publicaçãoOculta para vocêRemovida da página quando o autor é bloqueado
Efeito na contaNenhumBloqueada — não pode seguir, responder, citar nem enviar mensagem
Campos comparadosTexto da publicaçãoTexto da publicação, nome de exibição, nome de usuário, bio
PadrõesPalavras e frasesSubstrings mais regex JavaScript completo
Aplica no passadoNãoNão — age sobre o que a linha do tempo mostra
Confirmaçãonão se aplicaLista de candidatos que você revisa antes de qualquer coisa
ReversívelRemover a palavraDesbloquear pelo registro, um clique

São complementos, não concorrentes. Silencie um assunto; bloqueie uma conta. Se o que te incomoda é um tema, palavras silenciadas são a resposta mais limpa. Se o que te incomoda é um fluxo de contas que voltam amanhã debaixo de uma publicação nova, um bloqueio por palavra-chave é o que encerra.

Qual campo comparar

Em Configurações os quatro campos são interruptores independentes, e a escolha importa mais do que o texto das suas regras. Ordenados por quantas vezes uma correspondência significa o que você esperava:

  1. Nome de usuário. Um nome de usuário é escolhido de propósito e quase nunca por acidente. airdrop num nome de usuário é um acerto quase certo.
  2. Nome de exibição. Quase tão bom, e é onde quem se passa por outro e os bots de sorteio colocam o discurso.
  3. Bio. Boa para contato fora da plataforma e linguagem de promoção. Só está disponível para contas cujo perfil a extensão já viu, então trate como bônus, não como base.
  4. Texto da publicação. A escolha óbvia e a pior. Tudo o que é ambíguo mora aqui: crítica, citação, piada e gente perguntando se uma coisa é golpe.

Uma versão concreta disso: com o texto da publicação ligado, a palavra-chave giveaway pega o bot e também pega a pessoa que escreve "another fake giveaway in my replies". Com o texto da publicação desligado e o nome de usuário ligado, ela pega @Giveaway_King2026 e deixa a reclamação em paz.

Escrever palavras-chave que se sustentam

Palavras-chave são substrings simples, sem diferenciar maiúsculas — sem sintaxe, uma por linha. Três hábitos as tornam confiáveis:

  • Prefira frases a palavras. claim your reward não dispara à toa; claim dispara.
  • Lembre que substrings não respeitam limite de palavra. art corresponde a "start", "particle" e "@artist". Se você quer a palavra, use a caixa de regex e \bart\b.
  • Uma regra por ideia. Uma regra que você explica numa frase é uma regra que você consegue corrigir depois. Regras longas e espertas são apagadas por inteiro na primeira vez que disparam errado.

A extensão também vem com uma pequena lista embutida, voltada a um gênero específico de spam de resposta, fundida aos seus filtros na primeira execução. É só aditiva: apague qualquer uma dessas linhas e elas continuam apagadas.

Regex, na medida que você de fato precisa

Os padrões vão na caixa de Regex, um por linha, em sintaxe JavaScript, sem barras em volta. Cinco peças cobrem quase tudo:

PeçaSignificaExemplo
|um ou outroairdrop|giveaway|presale
\blimite de palavra\bdm\b — "dm", não "admin"
?caractere opcionalsignals? — signal ou signals
.*qualquer coisa, de qualquer tamanhofree.*mint
(?=…)também precisa conterveja abaixo

Duas propriedades deste motor em particular valem memorizar. Os padrões não diferenciam maiúsculas, então nunca escreva [Aa]irdrop. E são compilados sem a flag Unicode, então \p{L} e companhia não fazem nada de útil — alcance caracteres não ASCII com intervalos explícitos.

O padrão de duas condições

Esta é a construção que vale aprender, porque transforma uma palavra ampla demais numa regra que não machuca. (?=…) é um lookahead: afirma que algo está presente sem consumir, então vários em sequência significam "todos estes precisam aparecer em algum lugar".

(?=.*airdrop)(?=.*\b(dm|telegram)\b)

Isso se lê: menciona um airdrop e te empurra para um canal privado. O golpe faz as duas coisas. Quem reclama do golpe faz a primeira e não a segunda, então fica intocado. Qualquer palavra ambígua pode ser salva assim — dê a ela um acompanhante que o spam sempre tem e a fala comum quase nunca tem: um canal de contato, um imperativo como claim, ou um encurtador de link.

A comparação roda contra o texto da publicação, o nome de exibição, o nome de usuário e a bio juntos, o que tem duas consequências. As duas metades de um par de lookahead podem ser satisfeitas por campos diferentes — um nome de usuário contendo "airdrop" mais uma publicação dizendo "DM me" é uma correspondência. E ^ e $ não significam o começo e o fim da publicação, então escreva padrões sem âncora.

O que acontece com o texto antes da sua regra vê-lo

Sua regra não é testada só contra o texto bruto da página. A extensão monta três versões e tenta cada uma:

  1. O texto bruto, exatamente como a página tem — então uma regra escrita para corresponder a pontuação ou a um caractere de largura total ainda funciona.
  2. Uma versão limpa: caracteres invisíveis removidos e depois normalização Unicode, para que letras de largura total, circuladas e subscritas ou sobrescritas voltem às simples.
  3. Uma versão apertada: o texto limpo com cada espaço, sinal de pontuação e emoji removidos, deixando só letras e dígitos.

Essa terceira é por que uma palavra-chave ainda corresponde quando um spammer espaça uma palavra com emoji entre os caracteres. Suas palavras-chave recebem o mesmo tratamento, então uma frase que você copiou direto de uma resposta de spam — caracteres invisíveis e tudo — ainda funciona como filtro. A razão de tudo isso ser necessário está em o truque dos caracteres invisíveis.

A lista de permissões faz parte do filtro, não é uma rede de segurança

A terceira caixa da aba Filtros recebe nomes de usuário, um por linha, sem o @. Essas contas nunca são marcadas e nunca aparecem como candidatas, não importa o que publiquem.

Trate o preenchimento como o passo um, não como controle de dano. As contas com mais chance de serem pegas por uma regra ampla são as que você mais lê: as pessoas do seu nicho comentando os golpes, citando os bots e usando o mesmo vocabulário. Trinta segundos colocando-as na lista de permissões te dão licença para escrever uma regra bem mais agressiva.

Testar uma regra antes de confiar nela

  1. Adicione a regra com a varredura ligada e Totalmente automático desligado — que é o padrão, e a razão de ser o padrão.
  2. Role uma seção de respostas movimentada e observe a aba Candidatos. Cada linha nomeia a regra que a marcou.
  3. Leia a lista sem bloquear nada. Uma regra que produziu três bots óbvios e uma pessoa que você reconhece precisa de um acompanhante antes de ser usada.
  4. Só quando uma regra tiver produzido uma lista limpa duas vezes é que vale considerar deixá-la rodar sem revisão — e mesmo assim, as contas com que você se importa entram primeiro na lista de permissões.

O fluxo completo em volta disso, inclusive ritmo e limites de taxa, está em como bloquear contas em massa no Twitter.

Perguntas frequentes

O X bloqueia contas por palavra-chave sozinho?

Não. O X pode silenciar palavras, o que esconde publicações correspondentes da sua linha do tempo e das notificações, e pode bloquear uma conta que você escolhe na mão. Não tem nada que transforme uma palavra-chave num bloqueio, e palavras silenciadas nunca são comparadas com nomes de exibição ou bios.

Quantas palavras silenciadas o X permite?

O X não publica um número rígido, e na prática as pessoas mantêm listas longas. A limitação não é a quantidade — é que uma palavra silenciada só esconde uma publicação. A conta continua podendo seguir você, responder e enviar mensagem.

Regras de palavra-chave valem para contas que eu sigo?

Valem para toda publicação que a extensão vê, inclusive contas que você segue — e é exatamente por isso que a lista de permissões existe. Coloque nela as contas que você lê e nenhuma regra pode alcançá-las.

O regex aqui diferencia maiúsculas?

Não. Os padrões são compilados sem diferenciar maiúsculas, então não há necessidade de classes como [Aa] nem de uma flag inline. Eles são compilados sem a flag Unicode, porém, então escapes de propriedade \p{...} não funcionam.

Uma palavra-chave corresponde a uma palavra dentro de outra?

Sim. Palavras-chave são substrings simples, então "art" corresponde a "start" e a "@artist". Se isso for um problema, leve a palavra para a caixa de regex e envolva com limites de palavra \b.

Bloqueie contas de spam no X em massa, depois de confirmar

Extensão gratuita do Chrome. Sem conta, sem servidor, sem rastreamento.

Adicionar ao Chrome
Primeiros passos

Como bloquear contas em massa no Twitter (X) em 2026

O fluxo completo para um bloqueio em massa no X: escreva os filtros, varra a linha do tempo, revise a lista de candidatos e percorra cinquenta contas num ritmo que não dispare os limites de taxa do X. Inclui o que fazer quando aparece um 429.

9 min de leitura