文字数カウンター& 読了時間

リアルタイムで文字数、単語数、段落数、文数をカウントし、読了時間を推定します。完全にローカルで処理 — テキストはサーバーに送信されません。

テキストを入力

リアルタイムで更新

統計
推定読書時間中国語 ~500文字/分 · 英語 ~200語/分
CJK 文字数漢字・仮名・ハングル
英単語数スペース区切り
文字数スペース含む
文字数(スペース除く)空白文字を除く
段落数空行で区切る
文の数. ! ? 。!? …
UTF-8 バイト数

このツールは役に立ちましたか?

コード例

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

よくある質問

CJK 文字はどのようにカウントされますか?
このツールは Unicode の CJK 統合漢字(U+4E00–9FFF)、拡張 A(U+3400–4DBF)、互換漢字(U+F900–FAFF)、日本語のひらがな・カタカナ(U+3040–30FF)、韓国語のハングル音節(U+AC00–D7AF)をカウントします。
英単語はどのようにカウントされますか?
英単語は連続する文字列(ハイフンやアポストロフィを含む)を1単語としてカウントします。例:don't は 1 単語、state-of-the-art は 1 単語です。純粋な数字は単語としてカウントされません。
読了時間はどのように推定されますか?
中国語は約 500 文字/分(成人の黙読速度)、英語は約 200 語/分で推定されます。中英混在テキストの場合、それぞれ別々に計算して合計するため、より正確な推定が可能です。
段落はどのように区分されますか?
1 つ以上の空行(連続した改行)で区切られたテキストブロックを 1 段落とみなします。単一の改行では新しい段落は作成されません。Markdown やほとんどのライティングツールと同じ方式です。
テキストはサーバーに送信されますか?
いいえ。このツールは完全にブラウザ内で動作します。すべての計算はローカルで行われ、テキストがデバイスから出ることはありません。機密文書の処理にも安全にご利用いただけます。
UTF-8 バイトサイズは何に使えますか?
バイトサイズは、テキストが UTF-8 エンコーディングで実際に占めるストレージ容量を示します。データベースフィールドの制限(VARCHAR の長さなど)、API リクエストペイロードのサイズ、ファイルストレージの確認に役立ちます。日本語の漢字は通常 UTF-8 で 3 バイトを占めます。