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
- Abra a Ferramenta de contagem de palavras
- Cole ou digite o texto
- Exibição automática: contagem de caracteres, contagem de palavras, contagem de linhas, contagem de parágrafos, tempo de leitura
- 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.