Знаки и байты — разные числа
Подсчёт с пробелами включает каждый знак; подсчёт без пробелов отбрасывает пробелы, переводы строк и табуляции. Анкеты и задания с ограничением обычно указывают одно из двух, и для одного и того же текста эти цифры обычно расходятся на десять-двадцать процентов.
Байты показывают, сколько текст занимает при хранении или передаче. В UTF-8 английские буквы и цифры занимают один байт, буквы с диакритикой вроде é и кириллица — два, большинство китайских, японских и корейских иероглифов — три, эмодзи — четыре. Ширину столбцов в базах данных и лимиты SMS обычно считают в байтах.
Слова считаются по пробелам. Это подходит для языков, где слова разделяются пробелами; в китайском и японском их нет, поэтому там полезнее число символов.
Попасть точно в предел по числу знаков
Эмодзи и часть символов выглядят одним знаком, но внутри собраны из нескольких кодовых точек. Этот инструмент считает то, что читатель видит как один знак, а система, куда вы подаёте текст, может считать иначе, поэтому оставляйте запас, а не подгоняйте впритык.
Вставленный текст приносит в подсчёт начальные и конечные пробелы и пустые строки. Копирование из текстового редактора часто оставляет пробелы в концах строк, поэтому, если вы вышли за предел на несколько знаков, поищите невидимые пробелы прежде, чем что-то переписывать.
Перевод строки в одних системах — один знак, в других — два. Windows хранит его как два, поэтому текст со множеством коротких строк занимает больше байт, чем ожидалось. Это важно, когда соблюсти нужно предел в байтах, а не в знаках.