Guia de estatísticas e análise de texto: contagem de palavras, tempo de leitura e densidade de palavras-chave

Texto

Por que você precisa de estatísticas de texto?

Cenário Métricas necessárias
Otimização SEO Contagem de palavras, densidade de palavras-chave, legibilidade
Precificação de conteúdo Contagem de palavras, tempo de leitura
Trabalhos acadêmicos Contagem de palavras (chinês e inglês separadamente)
Redes sociais Contagem de caracteres (limite 280/2000)
Orçamentos de tradução Contagem de palavras/número de palavras

Diferenças na contagem de palavras entre chinês e inglês

Problema central: o chinês não tem espaços para separar palavras

Inglês: Hello World → 2 palavras (separadas por espaços)
Chinês: 你好世界 → 4 caracteres (contagem individual) ou 2 palavras (你好/世界)?

Três métodos de contagem

Método Algoritmo Resultado de "你好World" Cenário aplicável
Contagem de caracteres Todos os caracteres 7 Limites de redes sociais
Contagem de caracteres/palavras Chinês por caractere, inglês por palavra 6 (4 caracteres + 2 palavras) Precificação de conteúdo, SEO
Contagem de bytes Comprimento da codificação UTF-8 10 (4×3+2×1) Espaço de armazenamento

Implementação em JavaScript

function countText(text: string) {
  // 移除零宽字符
  const clean = text.replace(/[\u200B-\u200D\uFEFF]/g, '');

  // 字符数
  const charCount = clean.replace(/\s/g, '').length;

  // 中文字数
  const chineseChars = (clean.match(/[\u4e00-\u9fff]/g) || []).length;

  // 英文词数
  const englishWords = (clean.match(/[a-zA-Z]+/g) || []).length;

  // 数字组数
  const numbers = (clean.match(/\d+/g) || []).length;

  // 总字/词数
  const wordCount = chineseChars + englishWords + numbers;

  // 字节数(UTF-8)
  const byteCount = new TextEncoder().encode(clean).length;

  // 行数
  const!lineCount = clean.split(/\n/).filter(l => l.trim()).length;

  // 段落数
  const paragraphCount = clean.split(/\n\s*\n/).filter(p => p.trim()).length;

  return {
    charCount,
    wordCount,
    chineseChars,
    englishWords,
    numbers,
    byteCount,
    lineCount,
    paragraphCount,
  };
}

Estimativa do tempo de leitura

Fórmula de cálculo

Velocidade de leitura em chinês: ~500 caracteres/minuto
Velocidade de leitura em inglês: ~200-250 palavras/minuto

Tempo de leitura = Caracteres chineses / 500 + Palavras em inglês / 225

Implementação

function estimateReadingTime(text: string) {
  const chineseChars = (text.match(/[\u4e00-\u9fff]/g) || []).length;
  const englishWords = (text.match(/[a-zA-Z]+/g) || []).length;

  const minutes = chineseChars / 500 + englishWords / 225;

  if (minutes < 1) return '不到 1 分钟';
  if (minutes < 60) return `约 ${Math.ceil(minutes)} 分钟`;
  const hours = Math.floor(minutes / 60);
  const mins = Math.ceil(minutes % 60);
  return `约 ${hours} 小时 ${mins} 分钟`;
}

Velocidade de leitura por tipo de conteúdo

Tipo de conteúdo Velocidade em chinês Velocidade em inglês
Romances/ensaios 500-700 caracteres/min 250-300 palavras/min
Documentação técnica 300-400 caracteres/min 150-200 palavras/min
Documentos jurídicos 200-300 caracteres/min 100-150 palavras/min
Redes sociais 600-800 caracteres/min 300+ palavras/min

Análise de densidade de palavras-chave

O que é densidade de palavras-chave?

Densidade de palavras-chave = Número de ocorrências da palavra-chave / Total de palavras × 100%

Exemplo:
Total de palavras: 500
"前端" aparece 15 vezes
Densidade = 15 / 500 × 100% = 3%

Densidade recomendada para SEO

Densidade Avaliação
< 1% Muito baixa, os motores de busca podem não dar importância
1-3% ✅ Faixa ideal
3-5% Um pouco alta, preste atenção à naturalidade
> 5% ❌ Excesso de palavras-chave, possível penalização

Implementação

function analyzeKeywordDensity(text: string, keyword: string) {
  const regex = new RegExp(keyword, 'gi');
  const occurrences = (text.match(regex) || []).length;

  const chineseChars = (text.match(/[\u4e00-\u9fff]/g) || []).length;
  const englishWords = (text.match(/[a-zA-Z]+/g) || []).length;
  const totalWords = chineseChars + englishWords;

  const density = (occurrences / totalWords) * 100;

  return {
    keyword,
    occurrences,
    totalWords,
    density: density.toFixed(2) + '%',
    evaluation: density < 1 ? '过低' : density <= 3 ? '最佳' : density <= 5 ? '偏高' : '堆砌',
  };
}

Pontuação de legibilidade do texto

Flesch Reading Ease (inglês)

Pontuação = 206.835 - 1.015 × (Total de palavras/Total de frases) - 84.6 × (Total de sílabas/Total de palavras)

Referência de pontuação:
90-100  Muito fácil (5ª série)
60-70   Padrão (8-9ª série)
30-50   Um pouco difícil (estudantes universitários)
0-30    Muito difícil (acadêmico profissional)

Legibilidade em chinês

O chinês não possui o conceito de sílabas, portanto geralmente se mede pela longitude média das frases:

function chineseReadability(text: string) {
  const sentences = text.split(/[。!?;\n]/).filter(s => s.trim());
  const chineseChars = (text.match(/[\u4e00-\u9fff]/g) || []).length;

  const avgSentenceLength = chineseChars / sentences.length;

  if (avgSentenceLength <= 15) return { score: '易读', level: '大众' };
  if (avgSentenceLength <= 25) return { score: '适中', level: '标准' };
  if (avgSentenceLength <= 40) return { score: '较难', level: '专业' };
  return { score: '难读', level: '学术' };
}

Usando a ferramenta de estatísticas de texto

  1. Abra a Ferramenta de contagem de palavras
  2. Cole ou digite o texto
  3. Exibição automática: contagem de caracteres, contagem de palavras, contagem de linhas, contagem de parágrafos, tempo de leitura
  4. Suporte a estatísticas mistas de chinês e inglês

Aplicação prática de otimização de textos SEO

1. Comprimento do título

// O Google exibe aproximadamente 60 caracteres (30 caracteres chineses)
function checkTitle(title: string) {
  const length = title.length;
  return {
    length,
    status: length <= 60 ? '✅' : '❌ 超过 60 字符',
  };
}

2. Comprimento da descrição

// O Google exibe aproximadamente 160 caracteres (80 caracteres chineses)
function checkDescription(desc: string) {
  const length = desc.length;
  return {
    length,
    status: length <= 160 ? '✅' : '❌ 超过 160 字符',
  };
}

3. Comprimento do corpo do texto

Tipo de página Contagem de palavras recomendada
Artigos de blog 1500-3000 palavras
Páginas de produtos 300-800 palavras
Página inicial 300-500 palavras
Tutoriais 2000+ palavras

4. Distribuição de palavras-chave

✅ Boa distribuição:
  O título contém a palavra-chave
  O primeiro parágrafo contém a palavra-chave
  Aparece naturalmente 3-5 vezes no corpo
  Os subtítulos H2/H3 contêm variantes

❌ Má distribuição:
  A palavra-chave se repete em cada parágrafo
  A palavra-chave não tem relação com o contexto
  Usa texto oculto para preencher

Perguntas frequentes

Por que as estatísticas do Word e das ferramentas online não coincidem?

As regras de "contagem de palavras" do Word podem diferir das ferramentas online:

  • O Word 2019+ conta o chinês por "caracteres"
  • Algumas ferramentas contam o chinês por "caracteres"
  • Recomenda-se usar uma única ferramenta de forma consistente para evitar disputas nos orçamentos

Como calcular a taxa de comentários no código?

function commentRate(code: string, language: string) {
  const totalLines = code.split('\n').length;
  let commentLines = 0;

  if (language === 'javascript') {
    const singleLineComments = (code.match(/\/\/.*/g) || []).length;
    const multiLineComments = (code.match(/\/\*[\s\S]*?\*\//g) || []).length;
    commentLines = singleLineComments + multiLineComments;
  }

  return (commentLines / totalLines * 100).toFixed(1) + '%';
}

Resumo

As estatísticas de texto parecem simples, mas na verdade escondem complexidades: a contagem mista de chinês e inglês, a estimativa do tempo de leitura e a análise de densidade de palavras-chave têm cada uma suas particularidades. Dominar essas métricas permitirá que você tenha clareza seja na otimização SEO, precificação de conteúdo ou orçamentos de tradução. A Ferramenta de contagem de palavras do Tools Ku permite obter todas as métricas com um único clique, para que você se concentre na criação de conteúdo.

#文本统计#字数统计#阅读时间#文本分析#教程