Экзотические пробелы
NO-BREAK SPACE (U+00A0)
Пробел, который запрещает перенос строки. Выглядит он в точности как обычный пробел и при этом является совершенно другой кодовой позицией.
- Кодовая позиция
U+00A0- Другие записи
u00a0\u00a0 - Категория
- Экзотические пробелы
- Удаляется по умолчанию
- Нет
- Управляющий параметр
- Пробелы
-s - Может нести нагрузку
- Нет
Скопировать и вставить U+00A0
Чтобы скопировать и вставить NO-BREAK SPACE (U+00A0), нажмите кнопку: в буфер обмена попадёт сам символ, а Ctrl+V (Cmd+V на Mac) вставит его в любое место, где можно печатать.
Откуда он берётся
HTML-сущность ` `, текстовые процессоры (в некоторых языках они сами ставят его после короткого слова), копирование с веб-страниц и любая французская раскладка, где правило требует пробел перед `;` `:` `?` `!`.
Почему это важно
Это самое частое невидимое различие в обычном тексте. Поиск, `split(" ")`, разбор CSV, проверка форм и сравнение строк видят другой символ, и ни один человек его не заметит. Заодно это готовый двоичный канал: неразрывный пробел даёт единицу, обычный ноль.
До и после
На экране не отличить. Разбить на два слова по обычному пробелу удастся только вторую строку.
Символ показан подписанной плашкой, чтобы было видно, где он стоит. В вашем тексте он не рисует ровно ничего.
Когда он уместен
Постоянно. «10 км», «рис. 3», французские отбивки у знаков препинания и фамилия, которая не должна разъезжаться по строкам. У этого символа есть настоящая работа, поэтому по умолчанию Ghostchars его не трогает.
Как его удалить
Включите параметр «Пробелы» (`-s`). Символ будет ЗАМЕНЁН обычным пробелом, а не удалён, поэтому слова останутся раздельными.
Текст лежит в файле, а не в буфере обмена? Отчёт по документу для .docx, .odt и .html находит символ внутри файла вместе со скрытыми фрагментами и исправлениями, и открывать файл для этого не нужно. Если вопрос в том, что делает остальной текст, а не этот один символ, можно измерить разброс длины предложений и увидеть, где проявляется каждая привычка: без баллов и без утверждений о том, кто написал текст.
Это водяной знак ИИ?
Встречается в выводе ИИ, но не водяной знак
Он действительно встречается в выводе моделей, чаще всего во французском и немецком тексте, где им полны обучающие данные, и рядом с единицами измерения. Но это не водяной знак: та же самая типографика получается у живого верстальщика и у французской клавиатуры. Неразрывный пробел не доказывает ничего о том, кто написал предложение.
Он действительно попадается в выводе моделей как обычная типографика, усвоенная из обучающих данных. Это не намеренно, не задумано как обнаружимое и ничего не доказывает про отдельный документ.
Вопросы
Почему он не удаляется по умолчанию?
Потому что в большинстве текстов, где он встречается, он делает работу. Удаление склеило бы слова, а молчаливая замена изменила бы типографику, которую выбрали намеренно.
Это примета ИИ во французском тексте?
Нет. Французская типографика требует пробел перед `;` `:` `?` и `!`, и правильным пробелом там служит неразрывный. Найти их во французском значит найти правильный французский, а не машину.
Почему поиск его не находит?
Потому что в тексте стоит кодовая позиция U+00A0, а в вашем запросе U+0020. Рисуются они одинаково, сравниваются по-разному.
Проверьте свой текст
Вставьте что угодно в инструмент очистки, чтобы увидеть каждый скрытый символ: позицию, кодовую позицию и то, что произойдёт с каждым из них. Ничего никуда не отправляется.
Проверьте свой текстНайти неразрывные пробелы в Google DocsОчищать в Chrome прямо при вставкеОчищать на Mac одной комбинацией клавишВсе символы