Счётчик слов и символов

Считаем не «длину строки в коде», а понятные человеку слова, видимые символы, предложения, абзацы и строки

Инструменты текста и учёбы

Что нужно сделать?

Счётчик слов и символов
Раздел «Текст и учёба»

Текст остаётся в этой вкладке. Он не отправляется в API, не записывается в URL и закрыт от Вебвизора.

Мастер Удобника объясняет подсчёт текста
В тексте найдено
Слов17
Символов с пробелами125
Без пробелов106
Время чтения≈ 6 сек
Предложений
4
Абзацев
2
Строк
3
Пробельных символов
19
Средняя длина слова
5,82
Самое длинное слово
предложения · 11

Как посчитан текст

1. Берём исходный текст без переписывания

Не меняем регистр, не склеиваем строки и не удаляем знаки. Счётчики работают с тем, что находится в поле.

2. Находим видимые символы

125 графем

Символ — расширенная графема Unicode: буква с ударением или составной эмодзи считается одной видимой единицей.

3. Отделяем пробельные символы

106 + 19= 125 символов

К пробельным относятся обычные и неразрывные пробелы, табуляция и переводы строк.

4. Находим слова по одному правилу

17 слов

Слово — непрерывная последовательность букв или цифр; внутренний дефис или апостроф сохраняет её одним словом.

5. Размечаем предложения

4 предложений

Используем языковые границы Unicode: точка в числе и точка в конце предложения рассматриваются по-разному.

6. Считаем строки и абзацы

2 + 1= 3 строк

Одна или несколько пустых строк отделяют новый абзац. Получилось 2.

7. Оцениваем время чтения и проверяем сумму

17 ÷ 180 × 60 = 6 сек

Время округляется вверх до целой секунды и остаётся оценкой, потому что реальная скорость зависит от сложности текста.

Проверка сошлась106 без пробелов + 19 пробельных = 125 всего
Unicode-графемыПравило слов видноТекст остаётся в браузере

Как именно считаются слова и символы

Один и тот же текст можно посчитать по-разному, если заранее не определить правила. Удобник показывает каждое правило рядом с результатом, чтобы цифры можно было повторить и проверить.

Символ для человека и символ для программы — не всегда одно

Некоторые видимые знаки состоят из нескольких кодовых точек. Например, буква может храниться вместе с отдельным знаком ударения, а семейный эмодзи объединяет несколько людей связующими знаками. Мы считаем расширенные графемы Unicode — то, что обычно воспринимается как один символ.

ПримерКодовые единицы JavaScriptВидимые графемы
А11
е + ударение21
👨‍👩‍👧‍👦111

Что входит в «без пробелов»

Из общего количества убираются все графемы со свойством Unicode White_Space: обычный и неразрывный пробел, табуляция, перевод строки и другие стандартизованные пробельные знаки. Пунктуация, дефисы и эмодзи остаются.

без пробелов + пробельные = все символы

Одно прозрачное правило для слов

Слово начинается с буквы или цифры и продолжается буквами, цифрами или комбинируемыми знаками. Дефис, тире или апостроф остаётся внутри слова только тогда, когда по обе стороны есть буквенная или цифровая часть.

одно слово:кто-тоодно слово:rock’n’rollтри слова:версия 2 готова

Предложения определяются по контексту

Обычное разделение по каждой точке ошиблось бы в числе 2.1 и многих сокращениях. Поэтому сервис использует сегментацию предложений `Intl.Segmenter` для русской локали и считает только сегменты, в которых есть буква или цифра.

Любой автоматический алгоритм может встретить неоднозначную авторскую пунктуацию. Поэтому количество предложений — полезный структурный показатель, но не редакторское заключение.

Строки и абзацы — разные величины

Строка появляется после каждого перевода строки. Даже пустая последняя строка после завершающего перевода учитывается. Абзац — это непрерывный блок непустых строк; одна или несколько пустых строк отделяют следующий абзац.

Время чтения — понятная оценка

Формула проста: слова ÷ скорость чтения × 60 секунд. По умолчанию установлено 180 слов в минуту, но значение можно менять от 60 до 600. Итог округляется вверх до секунды.

181 слово ÷ 180 слов/мин × 60 = 61 секунда

Почему есть ограничение в 100 000 символов

Подсчёт выполняется в браузере и не должен подвешивать вкладку на слабом телефоне. Лимит относится к видимым графемам; перед тяжёлой сегментацией также действует техническая защита от аномально длинной строки.

Приватность текста

Страница не имеет API для этого инструмента. Исходный текст не сохраняется в URL или браузерном хранилище и не передаётся в аналитику. Классы `ym-disable-keys`, `ym-disable-submit` и `ym-hide-content` дополнительно закрывают поле и производные результаты от Вебвизора.

Методика и первичные источники

Частые вопросы

Что калькулятор считает символом?

Один видимый Unicode-элемент, или графему. Поэтому буква с комбинируемым ударением и семейный эмодзи из нескольких кодовых точек считаются по одному символу.

Пробел входит в количество символов?

Да. Основной счётчик включает пробелы, табуляцию и переводы строк. Рядом отдельно показано число символов без всех Unicode-пробелов.

Как считается слово через дефис?

Если дефис или апостроф стоит между буквенными или цифровыми частями, вся последовательность считается одним словом: кто-то и rock’n’roll. Отдельный знак препинания словом не является.

Считаются ли числа словами?

Да. Непрерывная последовательность цифр считается словом. Это делает правило понятным для дат, артикулов и учебных текстов.

Как считаются абзацы и строки?

Каждый перевод строки создаёт следующую строку. Новый абзац начинается после одной или нескольких пустых строк; строки только из пробелов тоже считаются пустыми.

Точно ли определяется количество предложений?

Сервис использует языковую сегментацию Unicode и хорошо отличает многие сокращения и десятичные точки. Но автоматическая граница предложения остаётся приближением для неоднозначных авторских конструкций.

Как рассчитано время чтения?

Количество слов делится на выбранную скорость в словах за минуту. Результат переводится в секунды и округляется вверх. Это ориентир, а не обещание точного времени.

Передаётся ли мой текст на сервер?

Нет. Подсчёт выполняется локально в текущей вкладке. Текст не попадает в URL, localStorage, API или аналитику и закрыт от записи Вебвизора.