Compteur de mots& Temps de lecture

Comptage en temps reel des mots, caracteres, paragraphes et phrases avec estimation du temps de lecture. Entierement local — votre texte ne quitte jamais votre navigateur.

Entrez votre texte

Les statistiques se mettent à jour en temps réel

Statistiques
Temps de lecture estiméChinois ~500 car./min · Anglais ~200 mots/min
Caractères CJKChinois, Japonais, Coréen
Mots anglaisséparés par des espaces
Caractèresespaces inclus
Caractères (sans espaces)sans espaces
Paragraphesséparés par des lignes vides
Phrases. ! ? 。!? …
Taille en octets UTF-8

Cet outil a-t-il résolu votre problème ?

Exemples de code

JavaScript
const text = "Hello 世界";

// CJK characters (Chinese, Japanese, Korean)
const cjk = (text.match(
  /[\u4e00-\u9fff\uac00-\ud7af]/g
) ?? []).length; // 2

// English words
const words = (text.match(
  /[a-zA-Z][a-zA-Z'-]*/g
) ?? []).length; // 1

// Reading time (ms)
const mins = cjk / 500 + words / 200;
Python
import re

text = "Hello 世界"

# CJK characters (Chinese, Japanese, Korean)
cjk = len(re.findall(
    r'[\u4e00-\u9fff\uac00-\ud7af]', text
))  # 2

# English words
words = len(re.findall(
    r'[a-zA-Z][a-zA-Z\'-]*', text
))  # 1

# Characters without spaces
no_sp = len(text.replace(" ", ""))
TypeScript
function wordStats(text: string) {
  const cjk = (text.match(
    /[\u4e00-\u9fff\u3040-\u30ff\uac00-\ud7af]/g
  ) ?? []).length;
  const words = (text.match(
    /[a-zA-Z][a-zA-Z'-]*/g
  ) ?? []).length;
  const paragraphs = text
    .split(/\n\s*\n/)
    .filter(p => p.trim()).length;
  return { cjk, words, paragraphs };
}
Go
import (
    "regexp"
    "unicode"
)

func countCJK(s string) int {
    count := 0
    for _, r := range s {
        if unicode.Is(unicode.Han, r) ||
           unicode.Is(unicode.Hangul, r) {
            count++
        }
    }
    return count
}

var wordRe = regexp.MustCompile(
    `[a-zA-Z][a-zA-Z'-]*`)

Questions frequemment posees

Comment les caracteres CJK sont-ils comptes ?
L'outil compte les ideogrammes unifies CJK Unicode, y compris les caracteres chinois courants (U+4E00–9FFF), l'extension A (U+3400–4DBF), les ideogrammes de compatibilite (U+F900–FAFF), les hiragana/katakana japonais (U+3040–30FF) et les syllabes hangul coreennes (U+AC00–D7AF).
Comment les mots anglais sont-ils comptes ?
Les mots anglais sont comptes comme des sequences de lettres consecutives, incluant optionnellement les traits d'union et les apostrophes. Exemple : don't compte pour 1 mot, state-of-the-art compte pour 1 mot. Les nombres purs ne sont pas comptes comme des mots.
Comment le temps de lecture est-il calcule ?
La vitesse de lecture du chinois est estimee a environ 500 caracteres/minute (lecture silencieuse adulte), et l'anglais a environ 200 mots/minute. Pour les textes mixtes, les deux sont calcules separement puis additionnes pour une estimation plus precise.
Comment les paragraphes sont-ils definis ?
Un paragraphe est un bloc de texte separe par une ou plusieurs lignes vides. Un simple saut de ligne ne cree pas un nouveau paragraphe — conformement a Markdown et a la plupart des outils d'ecriture.
Mon texte est-il envoye a un serveur ?
Non. Cet outil fonctionne entierement dans votre navigateur. Tous les calculs sont effectues localement — votre texte ne quitte jamais votre appareil, ce qui le rend sur pour les documents sensibles.
A quoi sert la taille en octets UTF-8 ?
La taille en octets indique l'espace de stockage reel du texte en encodage UTF-8. C'est utile pour verifier les limites des champs de base de donnees (ex. longueur VARCHAR), la taille des charges utiles des requetes API ou le stockage de fichiers. Les caracteres chinois occupent generalement 3 octets chacun en UTF-8.