Guide des statistiques et de l'analyse de texte : comptage des mots, temps de lecture et densité des mots-clés
Texte
Pourquoi avoir besoin de statistiques de texte ?
| Scénario | Métriques nécessaires |
|---|---|
| Optimisation SEO | Nombre de mots, densité des mots-clés, lisibilité |
| Tarification du contenu | Nombre de mots, temps de lecture |
| Travaux académiques | Nombre de mots (chinois et anglais séparément) |
| Réseaux sociaux | Nombre de caractères (limite 280/2000) |
| Devis de traduction | Nombre de caractères/mots |
Différences de comptage des mots entre le chinois et l'anglais
Problème central : le chinois n'a pas d'espaces pour séparer les mots
Anglais : Hello World → 2 mots (séparés par des espaces)
Chinois : 你好世界 → 4 caractères (comptage individuel) ou 2 mots (你好/世界) ?
Trois méthodes de comptage
| Méthode | Algorithme | Résultat de « 你好World » | Scénario applicable |
|---|---|---|---|
| Nombre de caractères | Tous les caractères | 7 | Limites des réseaux sociaux |
| Nombre de caractères/mots | Chinois par caractère, anglais par mot | 6 (4 caractères + 2 mots) | Tarification du contenu, SEO |
| Nombre d'octets | Longueur d'encodage UTF-8 | 10 (4×3+2×1) | Espace de stockage |
Implémentation 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,
};
}
Estimation du temps de lecture
Formule de calcul
Vitesse de lecture en chinois : ~500 caractères/minute
Vitesse de lecture en anglais : ~200-250 mots/minute
Temps de lecture = Caractères chinois / 500 + Mots anglais / 225
Implémentation
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} 分钟`;
}
Vitesse de lecture selon le type de contenu
| Type de contenu | Vitesse en chinois | Vitesse en anglais |
|---|---|---|
| Romans/essais | 500-700 caractères/min | 250-300 mots/min |
| Documentation technique | 300-400 caractères/min | 150-200 mots/min |
| Documents juridiques | 200-300 caractères/min | 100-150 mots/min |
| Réseaux sociaux | 600-800 caractères/min | 300+ mots/min |
Analyse de la densité des mots-clés
Qu'est-ce que la densité des mots-clés ?
Densité des mots-clés = Nombre d'occurrences du mot-clé / Nombre total de mots × 100 %
Exemple :
Nombre total de mots : 500
« 前端 » apparaît 15 fois
Densité = 15 / 500 × 100 % = 3 %
Densité recommandée pour le SEO
| Densité | Évaluation |
|---|---|
| < 1 % | Trop faible, les moteurs de recherche peuvent l'ignorer |
| 1-3 % | ✅ Plage optimale |
| 3-5 % | Un peu élevée, attention à la naturalité |
| > 5 % | ❌ Bourrage de mots-clés, risque de pénalité |
Implémentation
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 ? '偏高' : '堆砌',
};
}
Score de lisibilité du texte
Flesch Reading Ease (anglais)
Score = 206,835 - 1,015 × (Nombre total de mots / Nombre total de phrases) - 84,6 × (Nombre total de syllabes / Nombre total de mots)
Échelle de référence :
90-100 Très facile (CM2)
60-70 Standard (4ème-3ème)
30-50 Assez difficile (étudiants)
0-30 Très difficile (académique professionnel)
Lisibilité en chinois
Le chinois n'a pas de concept de syllabe, on utilise donc généralement la longueur moyenne des phrases :
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: '学术' };
}
Utilisation de l'outil de statistiques de texte
- Ouvrez l'Outil de comptage de mots
- Collez ou saisissez le texte
- Affichage automatique : nombre de caractères, nombre de mots, nombre de lignes, nombre de paragraphes, temps de lecture
- Prise en charge des statistiques mixtes chinois-anglais
Optimisation pratique des textes SEO
1. Longueur du titre
// Google affiche environ 60 caractères (30 caractères chinois)
function checkTitle(title: string) {
const length = title.length;
return {
length,
status: length <= 60 ? '✅' : '❌ 超过 60 字符',
};
}
2. Longueur de la description
// Google affiche environ 160 caractères (80 caractères chinois)
function checkDescription(desc: string) {
const length = desc.length;
return {
length,
status: length <= 160 ? '✅' : '❌ 超过 160 字符',
};
}
3. Longueur du corps du texte
| Type de page | Nombre de mots recommandé |
|---|---|
| Articles de blog | 1500-3000 mots |
| Pages produit | 300-800 mots |
| Page d'accueil | 300-500 mots |
| Tutoriels | 2000+ mots |
4. Distribution des mots-clés
✅ Bonne distribution :
Le titre contient le mot-clé
Le premier paragraphe contient le mot-clé
Apparaît naturellement 3 à 5 fois dans le corps
Les sous-titres H2/H3 contiennent des variantes
❌ Mauvaise distribution :
Le mot-clé est répété dans chaque paragraphe
Le mot-clé n'a aucun lien avec le contexte
Du texte caché est utilisé pour le bourrage
Questions fréquentes
Pourquoi les statistiques de Word et des outils en ligne ne correspondent-elles pas ?
Les règles de « comptage des mots » de Word peuvent différer de celles des outils en ligne :
- Word 2019+ compte le chinois par « caractères »
- Certains outils comptent le chinois par « caractères »
- Il est recommandé d'utiliser un seul outil de manière cohérente pour éviter les litiges de tarification
Comment calculer le taux de commentaires dans le code ?
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) + '%';
}
Résumé
Les statistiques de texte semblent simples, mais recèlent des subtilités : le comptage mixte chinois-anglais, l'estimation du temps de lecture et l'analyse de la densité des mots-clés ont chacun leurs particularités. Maîtriser ces métriques vous permettra d'avoir des certitudes, que ce soit pour l'optimisation SEO, la tarification du contenu ou les devis de traduction. L'Outil de comptage de mots de Tools Ku vous permet d'obtenir toutes les métriques en un clic, pour que vous puissiez vous concentrer sur la création de contenu.
#文本统计#字数统计#阅读时间#文本分析#教程