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
- Abre la Herramienta de conteo de palabras
- Pega o ingresa el texto
- Se muestra automáticamente: cantidad de caracteres, cantidad de palabras, cantidad de líneas, cantidad de párrafos, tiempo de lectura
- 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.
#文本统计#字数统计#阅读时间#文本分析#教程