Contador de palavrase tempo de leitura

Contagem em tempo real de palavras, caracteres, paragrafos e frases com estimativa de tempo de leitura. Totalmente local — seu texto nunca sai do seu navegador.

Digite seu texto

As estatísticas são atualizadas em tempo real

Estatísticas
Tempo de leitura estimadoChinês ~500 car./min · Inglês ~200 palavras/min
Caracteres CJKChinês, Japonês, Coreano
Palavras em inglêsseparadas por espaços
Caracteresincluindo espaços
Caracteres (sem espaços)sem espaços
Parágrafosseparados por linhas em branco
Frases. ! ? 。!? …
Tamanho em bytes UTF-8

Esta ferramenta resolveu o seu problema?

Exemplos de codigo

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'-]*`)

Perguntas frequentes

Como os caracteres CJK sao contados?
A ferramenta conta os ideogramas unificados CJK do Unicode, incluindo caracteres chineses comuns (U+4E00–9FFF), Extensao A (U+3400–4DBF), ideogramas de compatibilidade (U+F900–FAFF), hiragana/katakana japoneses (U+3040–30FF) e silabas hangul coreanas (U+AC00–D7AF).
Como as palavras em ingles sao contadas?
Palavras em ingles sao contadas como sequencias consecutivas de letras, opcionalmente incluindo hifens e apostrofos. Exemplo: don't conta como 1 palavra, state-of-the-art conta como 1 palavra. Numeros puros nao sao contados como palavras.
Como o tempo de leitura e calculado?
A velocidade de leitura do chines e estimada em aproximadamente 500 caracteres/minuto (leitura silenciosa adulta), e o ingles em aproximadamente 200 palavras/minuto. Para textos mistos, ambos sao calculados separadamente e somados para uma estimativa mais precisa.
Como os paragrafos sao definidos?
Um paragrafo e um bloco de texto separado por uma ou mais linhas em branco. Uma unica quebra de linha nao cria um novo paragrafo — consistente com Markdown e a maioria das ferramentas de escrita.
Meu texto e enviado para algum servidor?
Nao. Esta ferramenta roda inteiramente no seu navegador. Todos os calculos acontecem localmente — seu texto nunca sai do seu dispositivo, tornando-o seguro para documentos sensiveis.
Para que serve o tamanho em bytes UTF-8?
O tamanho em bytes mostra quanto armazenamento o texto realmente ocupa em codificacao UTF-8. E util para verificar limites de campos de banco de dados (ex. comprimento VARCHAR), tamanhos de payload de requisicoes API ou armazenamento de arquivos. Caracteres chineses normalmente ocupam 3 bytes cada em UTF-8.