Guía de estadísticas y análisis de texto: conteo de palabras, tiempo de lectura y densidad de palabras clave

Texto

¿Por qué necesitas estadísticas de texto?

Escenario Métricas necesarias
Optimización SEO Cantidad de palabras, densidad de palabras clave, legibilidad
Precios de contenido Cantidad de palabras, tiempo de lectura
Trabajos académicos Cantidad de palabras (chino e inglés por separado)
Redes sociales Cantidad de caracteres (límite 280/2000)
Presupuestos de traducción Cantidad de palabras/número de palabras

Diferencias en el conteo de palabras entre chino e inglés

Problema central: el chino no tiene espacios para separar palabras

Inglés: Hello World → 2 palabras (separadas por espacios)
Chino: 你好世界 → ¿4 caracteres (conteo individual) o 2 palabras (你好/世界)?

Tres métodos de conteo

Método Algoritmo Resultado de "你好World" Escenario aplicable
Cantidad de caracteres Todos los caracteres 7 Límites de redes sociales
Cantidad de caracteres/palabras Chino por carácter, inglés por palabra 6 (4 caracteres + 2 palabras) Precios de contenido, SEO
Cantidad de bytes Longitud de codificación UTF-8 10 (4×3+2×1) Espacio de almacenamiento

Implementación en 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,
  };
}

Estimación del tiempo de lectura

Fórmula de cálculo

Velocidad de lectura en chino: ~500 caracteres/minuto
Velocidad de lectura en inglés: ~200-250 palabras/minuto

Tiempo de lectura = Caracteres chinos / 500 + Palabras en inglés / 225

Implementación

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} 分钟`;
}

Velocidad de lectura según el tipo de contenido

Tipo de contenido Velocidad en chino Velocidad en inglés
Novelas/ensayos 500-700 caracteres/min 250-300 palabras/min
Documentación técnica 300-400 caracteres/min 150-200 palabras/min
Documentos legales 200-300 caracteres/min 100-150 palabras/min
Redes sociales 600-800 caracteres/min 300+ palabras/min

Análisis de densidad de palabras clave

¿Qué es la densidad de palabras clave?

Densidad de palabras clave = Número de apariciones de la palabra clave / Total de palabras × 100%

Ejemplo:
Total de palabras: 500
"前端" aparece 15 veces
Densidad = 15 / 500 × 100% = 3%

Densidad recomendada para SEO

Densidad Evaluación
< 1% Demasiado baja, los motores de búsqueda pueden no darle importancia
1-3% ✅ Rango óptimo
3-5% Algo alta, prestar atención a la naturalidad
> 5% ❌ Relleno de palabras clave, posible penalización

Implementación

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 ? '偏高' : '堆砌',
  };
}

Puntuación de legibilidad del texto

Flesch Reading Ease (inglés)

Puntuación = 206.835 - 1.015 × (Total de palabras/Total de oraciones) - 84.6 × (Total de sílabas/Total de palabras)

Referencia de puntuación:
90-100  Muy fácil (5º grado)
60-70   Estándar (8-9º grado)
30-50   Algo difícil (estudiantes universitarios)
0-30    Muy difícil (académico profesional)

Legibilidad en chino

El chino no tiene el concepto de sílabas, por lo que generalmente se mide por la longitud promedio de las oraciones:

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: '学术' };
}

Uso de la herramienta de estadísticas de texto

  1. Abre la Herramienta de conteo de palabras
  2. Pega o ingresa el texto
  3. Se muestra automáticamente: cantidad de caracteres, cantidad de palabras, cantidad de líneas, cantidad de párrafos, tiempo de lectura
  4. Compatible con estadísticas mixtas de chino e inglés

Aplicación práctica de optimización de textos SEO

1. Longitud del título

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

2. Longitud de la descripción

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

3. Longitud del cuerpo del texto

Tipo de página Cantidad de palabras recomendada
Artículos de blog 1500-3000 palabras
Páginas de productos 300-800 palabras
Página de inicio 300-500 palabras
Tutoriales 2000+ palabras

4. Distribución de palabras clave

✅ Buena distribución:
  El título contiene la palabra clave
  El primer párrafo contiene la palabra clave
  Aparece naturalmente 3-5 veces en el cuerpo
  Los subtítulos H2/H3 contienen variantes

❌ Mala distribución:
  Se repite la palabra clave en cada párrafo
  La palabra clave no tiene relación con el contexto
  Se usa texto oculto para rellenar

Preguntas frecuentes

¿Por qué las estadísticas de Word y las herramientas en línea no coinciden?

Las reglas de "conteo de palabras" de Word pueden diferir de las herramientas en línea:

  • Word 2019+ cuenta el chino por "caracteres"
  • Algunas herramientas cuentan el chino por "caracteres"
  • Se recomienda usar una sola herramienta de forma consistente para evitar disputas en los presupuestos

¿Cómo calcular la tasa de comentarios en el 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) + '%';
}

Resumen

Las estadísticas de texto parecen simples, pero en realidad tienen sus complejidades: el conteo mixto de chino e inglés, la estimación del tiempo de lectura y el análisis de densidad de palabras clave tienen cada uno sus particularidades. Dominar estas métricas te permitirá tener claridad ya sea en optimización SEO, precios de contenido o presupuestos de traducción. La Herramienta de conteo de palabras de Tools Ku te permite obtener todas las métricas con un solo clic, para que te concentres en la creación de contenido.

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