Как считать символы и слова
Вставьте текст в Text Toolkit. Панель статистики обновляется по мере ввода и сообщает о символах, символах без пробелов, словах, предложениях, строках и абзацах.
Количество символов заслуживает понимания. Этот инструмент подсчитывает кластеры графем — то, как человек называет один символ, — поэтому смайлик, созданный из женщины, столяра и ноутбука, считается 1. Многие инструменты подсчитывают UTF-16 кодовых единиц и сообщают 5 для одних и тех же смайлов. Ни то, ни другое не является неправильным; они измеряют разные вещи.
Три разные вещи под названием «персонаж»
Для текста на английском языке без акцентов и смайлов все три полностью совпадают, поэтому разница остается незамеченной, пока не имеет значения. Они расходятся по эмодзи, флагам, ударным символам, написанным совмещенными знаками, и многим нелатинским шрифтам.
Практическое следствие: если вы учитываете ограничение, установленное где-то еще — в столбце базы данных, шлюзе SMS, валидаторе формы, социальной платформе — эта система может рассчитываться иначе, чем эта. Честный способ проверить жесткий лимит — это собственный счетчик пункта назначения.
- Кластер графем: что вы видите. Один смайлик, одна буква с ударением, один слог деванагари. Об этом сообщает Text Toolkit.
- Кодовая точка: одно значение Юникода. Эмодзи, состоящий из трех символов и соединителей, представляет собой несколько кодовых точек.
- Единица кода: один 16-битный слот в способе JavaScript хранения строк. Вот что сообщает наивный счетчик, и это самое большое из трех чисел.
Как здесь считаются слова и предложения
Слова представляют собой наборы непробельных символов, разделенных пробелами после обрезки. Это определение использует почти каждый счетчик слов, и оно имеет известные крайние случаи: соединение, написанное через дефис, считается за одно слово, длинное тире без пробелов вокруг него склеивает два слова в одно, а пронумерованный элемент списка подсчитывает его номер.
Предложения подсчитываются по завершающим знакам препинания — точке, вопросительному знаку, восклицательному знаку и их полноширинным CJK эквивалентам. Аббревиатуры увеличивают счет, поэтому «прибыл доктор Смит». читается как два предложения. Ни один счетчик не решит эту проблему без словаря, а инструмент, который делает вид, что это не так, просто будет менее заметно ошибаться.
Строки подсчитываются по разрывам строк с учетом окончаний Windows, Unix и классических Mac. Абзацы представляют собой фрагменты текста, разделенные пустой строкой.
Подсчет лимита платформы
Ограничения платформы меняются, и они применяются платформой, а не каким-либо счетчиком, который вы используете заранее. Вместо того, чтобы повторять здесь цифры, которые могут быть устаревшими к тому времени, как вы это прочтете, полезный совет касается METHOD.
Напишите в инструменте, посчитайте там, чтобы попасть в диапазон, и вставьте в платформу, чтобы подтвердить ее собственным счетчиком перед публикацией. Разрыв между двумя числами, если таковой имеется, говорит вам, как учитывается эта платформа — и как только вы узнаете это для той платформы, на которой вы публикуете сообщения, вы это поймете.
Две особенности, которые цепляют людей независимо от платформы. URL часто считается фиксированной длиной, а не реальной длиной, поэтому длинная ссылка может стоить меньше, чем кажется. А смайлик может стоить от одного до дюжины в зависимости от правила подсчета, поэтому пост, который помещается в редакторе, иногда не помещается в рамку.
Наведите порядок, прежде чем считать
- Обрезать строки, чтобы удалить начальные и конечные пробелы, которые увеличивают количество символов.
- Удалите пустые строки, если вы считаете список, а не прозу.
- Удалите дубликаты, если одна и та же запись появляется более одного раза и вы учитываете разные элементы.
- Прочтите количество строк для списка или количество слов для прозы. Подсчет неправильных статистических данных является более распространенной ошибкой, чем неправильный подсчет.
Рабочий пример: почему в одной строке указывается 14 символов, а в другом месте — 20
Возьмите такую фразу: отправьте 🚀 сегодня, где ракета — это один смайлик, а остальное — простой ASCII.
Счет на глаз: Корабль, космос, ИТ, космос, ракета, космос, сегодня. Четырнадцать вещей, на которые человек мог бы указать.
Text Toolkit сообщает 14 символов, 4 слов, 1 строк. Счетчик, измеряющий кодовые единицы UTF-16, сообщает 15, поскольку ракета занимает два слота.
Теперь замените ракету семейным смайликом, созданным из четырех человек, объединенных невидимыми столярами. Видимое количество по-прежнему равно 14. Количество кодовых единиц подскакивает примерно до 24, поскольку это единственное изображение состоит из одиннадцати кодовых единиц.
Результат: Тот же видимый текст, разница в два счета до десяти, и ни один инструмент не сломан. Если форма отклоняет ваш текст, хотя ваш счетчик утверждает, что он подходит, почти всегда именно поэтому — и решение состоит в том, чтобы сверить его с пунктом назначения, а не спорить со счетчиком.
Откройте инструмент
Подсчитывает кластеры графем, слова, предложения, строки и абзацы по мере ввода. Ничего не хранится и никуда не отправляется.
Что это не распространяется
- Подсчет слов основан на пробелах, поэтому соединения, написанные через дефис, считаются за одно слово, а длинное тире без пробелов — за два.
- Подсчет предложений основан на пунктуации и дополнен сокращениями.
- При подсчете графем используется собственный сегментатор браузера, где он доступен, поэтому для экзотических скриптов результаты могут незначительно отличаться в старых и новых браузерах.
- В этом инструменте нет оценки времени чтения, плотности ключевых слов и оценки читабельности.
- Обработка выполняется в основном потоке, поэтому очень большой документ может ненадолго приостановиться.
- Этот инструмент не может сообщить вам текущий предел какой-либо платформы и не пытается.