Код символа 160 что за символ
Перейти к содержимому

Код символа 160 что за символ

  • автор:

Код символа 160 что за символ

Добрый день! никто не в курсе, как посмотреть, какому символу соответствует код символа 160. 1С ничего не показывает. Функция Симв(160) выдает пустую строку. Где-нибудь есть эти таблицы ANSI где можно узнать, что за символ? Насколько я понимаю это какой-то дополнительный символ, относящийся может вообще к другому языку, поэтому наверное и не показывает.

Зажми Alt и одновременно с этим набери на нумпаде «160», отпусти Alt и смотри
?

160 — это неразрывный пробел. (1) Не 160, а 0160.

Здорово! Спасибо большое!

(4) а что такое неразрывный пробел?

(0) гэта пробел

(6) Пробел, в котором текст нельзя автоматически разрывать при переносе. Вроде так.

в 1С на этом пробеле Функция СОКРЛП, если пробел стоит спереди не отрабатывает, т.е не отсекает

(9) Правильно делает, она отсекает только 20 — обычные пробелы. А неразрывный просто так и не наберешь.

Неразрывный пробел

Неразрывный пробел используется в компьютерной кодировке текстов. Отображается как обычный , не даёт программам разорвать строку в этом месте. Помогает при вёрстке. Улучшает читаемость текста, а в редких случаях ещё сон, аппетит и цвет лица. В стандартной раскладке клавиатуры неразрывного пробела, к сожалению, нет. Присутствует в типографских. Во многих системах есть возможность ввести его с клавиатуры комбинацией клавиш:

Microsoft Windows (на цифровой клавиатуре с включённым Num Lock): Alt+0160 или Alt+255 (не всегда срабатывает)

Apple Mac OS X: ⌥ Opt+Space

Linux или Unix использующий X11: Compose, Space, Space

GNU Emacs: Ctrl+X 8 Space

Vim: Ctrl+K, Space, Space; или Ctrl+K, ⇧ Shift+N, ⇧ Shift+S

Dreamweaver, LibreOffice, Microsoft Word, OpenOffice.org (с версии 3.0): Ctrl+⇧ Shift+Space

FrameMaker, LyX, OpenOffice.org (версии младше 3.0), WordPerfect: Ctrl+Space

Mac Adobe InDesign: ⌥ Opt+⌘ Cmd+X

Символ «Неразрывный пробел» входит в подраздел «Символы и знаки препинания Latin-1» раздела «Дополнение к латинице — 1» и был утвержден как часть Юникода версии 1.1 в 1993 г.

Код символа 160 что за символ

Столкнулся с тем, что некоторые системы, например, SAP или 1C версии 7.7 выгружают числа типа 5555 в обычные текстовые файлы или в Эксель в виде строки «5 555», в которой в качестве разделителя используется не пробел, а символ с ASCII-кодом 160.
В результате, когда в Аксапте надо строку обратно преобразовать в число, приходится писать целые функции.
Есть ли какой-нибудь простой способ получить из строки «55 555,55» число в Аксапте 55555.55 ?
Я делаю так:

str normalizeNum(str _s) < int n; str ret; ; for (n = 1; n if (char2num(_s, n) != 160) ret += subStr(_s, n, 1); > return strrem(ret, " "); > ; strSum = strreplace("55 555,55", ",", "."); strSum = normalizeNum(strSum); realSum = str2num(strSum);
Ace of Database
Посмотреть профиль
Отправить личное сообщение для Ace of Database
Найти ещё сообщения от Ace of Database

Регистрация: 27.11.2016
Почему бы вместо этой функции второй раз strreplace не сделать — заменить символ 160 на пустоту?

BIDeveloper
Посмотреть профиль
Отправить личное сообщение для BIDeveloper
Найти ещё сообщения от BIDeveloper

Регистрация: 14.10.2004

Не хочется все время помнить про символ с кодом 160.
Несколько раз в год возникают задачи по интеграции, в которых такая штука может встретиться, и не хочется все время вспоминать про магическое число 160.
Хотелось бы, чтобы функция str2num или какая-то другая стандартная функция сама умела это делать.

Ace of Database
Посмотреть профиль
Отправить личное сообщение для Ace of Database
Найти ещё сообщения от Ace of Database

Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Сообщение от Ace of Database
а символ с ASCII-кодом 160.

Это неразрывный пробел.

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

поэтому вместо normalizeNum() лучше использовать встроенную strRem
https://msdn.microsoft.com/en-us/library/aa629339.aspx

но еще лучше воспользоваться функцией strKeep() для чисел
https://msdn.microsoft.com/en-us/library/aa867746.aspx
strkeep(s, «01234567890,.E+-«)

стоит также посмотреть на formattedstr2num
https://msdn.microsoft.com/en-us/library/cc570788.aspx
но я не уверен, что эта функция нормально работает с неразрывным пробелом

__________________
полезное на axForum, github, vk, coub.
Регистрация: 14.10.2004
Спасибо!
strkeep(s, «01234567890,.E+-«) — как раз то, что надо.

Ace of Database
Посмотреть профиль
Отправить личное сообщение для Ace of Database
Найти ещё сообщения от Ace of Database

Регистрация: 14.10.2004
На память оставлю, чтобы потом залезть и посмотреть

static void Job388(Args _args) < str s = " 5 555, 55 "; real r; ; r = str2Num(strreplace(strkeep(s, "01234567890,.E+-"), ",", ".")); info(strfmt("%1", r)); >
Ace of Database
Посмотреть профиль
Отправить личное сообщение для Ace of Database
Найти ещё сообщения от Ace of Database

Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10

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

для исследований стоит также заглянуть в Global::str2numOk и в Global::str2intOk.
там народ вообще через регулярку проверяет.
но если уж через interop, то можно использовать нормальные функции преобразования с учетом cultural context из .net

__________________
полезное на axForum, github, vk, coub.
Регистрация: 13.01.2004
Записей в блоге: 3

В общем случае, задача конвертации строки в число — не имеет решения. Преобразование всегда будет только для конкретных (локальных, частных) условий. Только если точно знать, в каком формате ожидать символьную строку для преобразования

Например, даже по приведенному коду можем получить не корректное преобразование в зависимости от формата строки

info(strFmt(‘%1’, str2num(‘1e+5’))); // Не корректное преобразование
info(strFmt(‘%1’, str2num(‘1.0e+5’))); // Корректное преобразование

А по поводу «некоторых стран», некоторые бухгалтера в качестве разделителя целой и дробной части числа используют дефис (минус)

Это «переводится» не 123 минус 45, а 123 руб 45 коп

__________________
— Может, я как-то неправильно живу?!
— Отчего же? Правильно. Только зря.

Владимир Максимов
Посмотреть профиль
Отправить личное сообщение для Владимир Максимов
Найти ещё сообщения от Владимир Максимов
Читать блог

Замена пробела в HTML:   вместо в ASP.NET

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

  •   : Слова вместе
  •   : Слова вместе

Оба варианта гарантируют, что слова «Слова» и «вместе» останутся на одной строке, словно их связывает неразрывная дружба.

Разбор html-сущностей

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

Числовые (   ) и именованные (   ) сущности

Числовые сущности, такие как   , распознаваемы в любой системе благодаря их Unicode-коду. Именованные сущности вроде   легко воспринимаются людьми, однако для их корректного отображения требуется понимание контекста html-разметки.

Какие сущности использовать?

В целом, при автоматическом генерировании html-кода программами предпочтительнее использовать числовые сущности типа   для обеспечения совместимости с различными системами, в которых могут некорректно работать именованные сущности.

Визуализация

  и   ведут себя идентично в html-разметке:

Сущность Визуализация Описание
  ��‍♂️⟷��‍♂️ Числовая сущность
  ��‍♂️⟷��‍♂️ Именованная сущность

Обе сущности создают пространство, не видимое для пользователя, но значимое для разработчика:

Скопировать код

Привет[��‍♂️⟷��‍♂️]Мир 

Можно считать эти символы-like workers "за кулисами", которые гарантируют, что слова в тексте не слипаются. Они заслуживают похвалы, не так ли? ��

Потенциальные проблемы

Обратите внимание, что в текстовых редакторах или средах разработки легко спутать числовые и именованные сущности, хотя они могут по-разному влиять на обработку вашего контента. Использование числовых сущностей, таких как   , может помочь избежать возможных ошибок с неузнаваемыми именованными сущностями в XML или XHTML. Числовые ссылки более устойчивы к изменениям в кодировке и реже подвергаются неправильной интерпретации при передаче данных.

SEO и доступность

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

Полезные материалы

  1. HTML сущности символов — подробное руководство по различиям между HTML сущностями.
  2. Ссылки на сущности символов в HTML 4 — официальная документация W3C о доступных сущностях в HTML 4.
  3. Unicode символ 'НЕРАЗРЫВНЫЙ ПРОБЕЛ' (U+00A0) — всё, что нужно знать о символе неразрывного пробела в Unicode.
  4. В чем разница между " " и " "? – Stack Overflow — обсуждение различий между этими сущностями.
  5. Универсальный стандарт Unicode для текста и символов — домашняя страница Консорциума Unicode.
  6. HTML стандарт — правила использования символов в HTML.
  7. Создание веб-страниц — руководство W3C по созданию веб-страниц.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *