Убрать символы нпп 1с
Необходимость убрать лишние пробелы в строке возникает нередко, и в 1С предусмотрен набор инструментов для решения этой задачи. Пробел относиться к так называемым «незначащим символам». В данной статье мы рассмотрим не только удаление пробелов, но и остальных незначащих символом.
· Символ возврата каретки
Постараемся рассмотреть как можно больше вариантов решения этой задачи.
Итак, от простого к сложному.
1.Удаление лишних пробелов
Для удаления пробелов в строках в 1С предусмотрены функции
СокрЛ() – удалить пробелы слева
СокрП() – удалить пробелы справа
СокрЛП() – удалить все пробельные символы
Выглядит это так:
//Отсекает незначащие символы слева
Строка = СокрЛ(" Привет! ");
//Строка = "Привет! ";
//Отсекает незначащие символы справа
Строка = СокрП(" Привет! ");
//Строка = " Привет!";
//Отсекает незначащие символы слева и справа
Строка = СокрЛП(" Привет! ");
//Строка = "Привет!";
2.Замена пробелов
Замена пробелов нужна если пробел находится в строковом представлении числа
//ПрСтрока = Убираем пробелы
3.Как убрать неразрывные пробелы?
Неразрывный пробел – это пробел, по которому не должен выполняться перенос на другую строку или другое разбиение текста при форматировании.
При представлении числового значения в строковое (Функция Строка(Число);) система может записать число с использованием пробелов, т.е. могут появиться разделители групп числа. Например, число 20000 система преобразовав в строку, добавит нам пробел «20 000».
Удаление лишних пробелов в таком случае можно выполнить через функцию Формат(), которая позволяет превратить число, дату или булево в строку. Функция Формат() принимает два параметра: <Значение> – это собственно то значение, которому мы хотим придать какой-либо вид, и <ФорматнаяСтрока> – второй параметр, в котором и заключается весь смысл функции Формат(). В рассматриваемом примере мы будем использовать ЧГ (NG) – порядок группировки разрядов числа.
В качестве значения указываются числа через запятую, обозначающие количество группируемых разрядов справа налево. Но мы не будем задавать значение и получим строковое представление числа без пробелов.
Строка = Формат(20000, "ЧГ 20000";
Для того, чтобы убрать неразрывные пробелы, также можно воспользоваться функцией СтрЗаменить(). Эта функция позволяет заменить одну подстроку на другую, то есть мы просто заменили неразрывный пробел (Символы.НПП) в строке на пустое значение.
Строка = СтрЗаменить(" Привет! Привет!", Символы.НПП, "");
//Строка = " Привет!Привет!";
Иногда приведенные выше методы не удаляют пробельные символы. Такая ситуация может возникнуть, например, при работе с файлами Excel. Для решения данной задачи можно попробовать заменить, например, неразрывный пробел используя код символа 160 (код символа неразрывного пробела) на пустую строку.
Строка = СтрЗаменить(" Строка ", Символ(160),"");
//Строка = "Строка";
4. Удаление из строки символов табуляции, символа возврата каретки, перевода Строки и перевода формы
Для этих символом в 1С описано перечисление Символы (Chars) со значениями:
ВК – символ возврата каретки;
ВТаб – вертикальная табуляция;
НПП – неразрывный пробел;
ПС – перевод строки;
ПФ – перевод формы (страницы);
Таб (Tab) – горизонтальная табуляция.
Для удаления этих символов в строке можно использовать функцию замены СтрЗаменить(). Можно также использовать символы с соответствующими кодами по ASCII или Unicode. Например, вместо Символы.ВК и Символы.ПС поставить соответственно Символ(10) и Символ(13).
Строка = СтрЗаменить(" Привет! Привет!", Символы.таб,"");
Строка = СтрЗаменить(" Привет! Привет!", Символы.(13),"");
5. Еще несколько способов удаления лишних пробелов в строке в 1С
По умолчанию программа "1С:Предприятие 8" преобразует значения типа Число и Дата к строке в соответствии с национальными установками. В меню «Администрирование → Региональные установки информационной базы» можно изменить и отдельные параметры форматирования дат и чисел, а также представление значений типа Булево. Например, можно в конкретной информационной базе отключить разделение триад числовых значений. Тогда при представлении числа в виде строки система не будет добавлять лишний пробел, а нам не нужно будет его, в последствии, удалять.
Вариант, когда нужно из многострочия получить одну строку, то есть убрать лишние пробелы ПС. Сделать это можно, используя функцию СтрПолучитьСтроку(<Строка>, <НомерСтроки>).
Смоделируем ситуацию для примера. Наша задача – убрать убрать лишние пробелы в строке и символы перевода строки.
Необходимость убрать лишние пробелы в строке возникает нередко, и в 1С предусмотрен набор инструментов для решения этой задачи. Пробел относиться к так называемым «незначащим символам». В данной статье мы рассмотрим не только удаление пробелов, но и остальных незначащих символом.
· Символ возврата каретки
Постараемся рассмотреть как можно больше вариантов решения этой задачи.
Итак, от простого к сложному.
1.Удаление лишних пробелов
Для удаления пробелов в строках в 1С предусмотрены функции
СокрЛ() – удалить пробелы слева
СокрП() – удалить пробелы справа
СокрЛП() – удалить все пробельные символы
Выглядит это так:
//Отсекает незначащие символы слева
Строка = СокрЛ(" Привет! ");
//Строка = "Привет! ";
//Отсекает незначащие символы справа
Строка = СокрП(" Привет! ");
//Строка = " Привет!";
//Отсекает незначащие символы слева и справа
Строка = СокрЛП(" Привет! ");
//Строка = "Привет!";
2.Замена пробелов
Замена пробелов нужна если пробел находится в строковом представлении числа
//ПрСтрока = Убираем пробелы
3.Как убрать неразрывные пробелы?
Неразрывный пробел – это пробел, по которому не должен выполняться перенос на другую строку или другое разбиение текста при форматировании.
При представлении числового значения в строковое (Функция Строка(Число);) система может записать число с использованием пробелов, т.е. могут появиться разделители групп числа. Например, число 20000 система преобразовав в строку, добавит нам пробел «20 000».
Удаление лишних пробелов в таком случае можно выполнить через функцию Формат(), которая позволяет превратить число, дату или булево в строку. Функция Формат() принимает два параметра: <Значение> – это собственно то значение, которому мы хотим придать какой-либо вид, и <ФорматнаяСтрока> – второй параметр, в котором и заключается весь смысл функции Формат(). В рассматриваемом примере мы будем использовать ЧГ (NG) – порядок группировки разрядов числа.
В качестве значения указываются числа через запятую, обозначающие количество группируемых разрядов справа налево. Но мы не будем задавать значение и получим строковое представление числа без пробелов.
Строка = Формат(20000, "ЧГ 20000";
Для того, чтобы убрать неразрывные пробелы, также можно воспользоваться функцией СтрЗаменить(). Эта функция позволяет заменить одну подстроку на другую, то есть мы просто заменили неразрывный пробел (Символы.НПП) в строке на пустое значение.
Строка = СтрЗаменить(" Привет! Привет!", Символы.НПП, "");
//Строка = " Привет!Привет!";
Иногда приведенные выше методы не удаляют пробельные символы. Такая ситуация может возникнуть, например, при работе с файлами Excel. Для решения данной задачи можно попробовать заменить, например, неразрывный пробел используя код символа 160 (код символа неразрывного пробела) на пустую строку.
Строка = СтрЗаменить(" Строка ", Символ(160),"");
//Строка = "Строка";
4. Удаление из строки символов табуляции, символа возврата каретки, перевода Строки и перевода формы
Для этих символом в 1С описано перечисление Символы (Chars) со значениями:
ВК – символ возврата каретки;
ВТаб – вертикальная табуляция;
НПП – неразрывный пробел;
ПС – перевод строки;
ПФ – перевод формы (страницы);
Таб (Tab) – горизонтальная табуляция.
Для удаления этих символов в строке можно использовать функцию замены СтрЗаменить(). Можно также использовать символы с соответствующими кодами по ASCII или Unicode. Например, вместо Символы.ВК и Символы.ПС поставить соответственно Символ(10) и Символ(13).
Строка = СтрЗаменить(" Привет! Привет!", Символы.таб,"");
Строка = СтрЗаменить(" Привет! Привет!", Символы.(13),"");
5. Еще несколько способов удаления лишних пробелов в строке в 1С
По умолчанию программа "1С:Предприятие 8" преобразует значения типа Число и Дата к строке в соответствии с национальными установками. В меню «Администрирование → Региональные установки информационной базы» можно изменить и отдельные параметры форматирования дат и чисел, а также представление значений типа Булево. Например, можно в конкретной информационной базе отключить разделение триад числовых значений. Тогда при представлении числа в виде строки система не будет добавлять лишний пробел, а нам не нужно будет его, в последствии, удалять.
Вариант, когда нужно из многострочия получить одну строку, то есть убрать лишние пробелы ПС. Сделать это можно, используя функцию СтрПолучитьСтроку(<Строка>, <НомерСтроки>).
Смоделируем ситуацию для примера. Наша задача – убрать убрать лишние пробелы в строке и символы перевода строки.
Необходимость убрать лишние пробелы в строке возникает нередко, и в 1С предусмотрен набор инструментов для решения этой задачи. Пробел относиться к так называемым «незначащим символам». В данной статье мы рассмотрим не только удаление пробелов, но и остальных незначащих символом.
· Символ возврата каретки
Постараемся рассмотреть как можно больше вариантов решения этой задачи.
Итак, от простого к сложному.
1.Удаление лишних пробелов
Для удаления пробелов в строках в 1С предусмотрены функции
СокрЛ() – удалить пробелы слева
СокрП() – удалить пробелы справа
СокрЛП() – удалить все пробельные символы
Выглядит это так:
//Отсекает незначащие символы слева
Строка = СокрЛ(" Привет! ");
//Строка = "Привет! ";
//Отсекает незначащие символы справа
Строка = СокрП(" Привет! ");
//Строка = " Привет!";
//Отсекает незначащие символы слева и справа
Строка = СокрЛП(" Привет! ");
//Строка = "Привет!";
2.Замена пробелов
Замена пробелов нужна если пробел находится в строковом представлении числа
//ПрСтрока = Убираем пробелы
3.Как убрать неразрывные пробелы?
Неразрывный пробел – это пробел, по которому не должен выполняться перенос на другую строку или другое разбиение текста при форматировании.
При представлении числового значения в строковое (Функция Строка(Число);) система может записать число с использованием пробелов, т.е. могут появиться разделители групп числа. Например, число 20000 система преобразовав в строку, добавит нам пробел «20 000».
Удаление лишних пробелов в таком случае можно выполнить через функцию Формат(), которая позволяет превратить число, дату или булево в строку. Функция Формат() принимает два параметра: <Значение> – это собственно то значение, которому мы хотим придать какой-либо вид, и <ФорматнаяСтрока> – второй параметр, в котором и заключается весь смысл функции Формат(). В рассматриваемом примере мы будем использовать ЧГ (NG) – порядок группировки разрядов числа.
В качестве значения указываются числа через запятую, обозначающие количество группируемых разрядов справа налево. Но мы не будем задавать значение и получим строковое представление числа без пробелов.
Строка = Формат(20000, "ЧГ 20000";
Для того, чтобы убрать неразрывные пробелы, также можно воспользоваться функцией СтрЗаменить(). Эта функция позволяет заменить одну подстроку на другую, то есть мы просто заменили неразрывный пробел (Символы.НПП) в строке на пустое значение.
Строка = СтрЗаменить(" Привет! Привет!", Символы.НПП, "");
//Строка = " Привет!Привет!";
Иногда приведенные выше методы не удаляют пробельные символы. Такая ситуация может возникнуть, например, при работе с файлами Excel. Для решения данной задачи можно попробовать заменить, например, неразрывный пробел используя код символа 160 (код символа неразрывного пробела) на пустую строку.
Строка = СтрЗаменить(" Строка ", Символ(160),"");
//Строка = "Строка";
4. Удаление из строки символов табуляции, символа возврата каретки, перевода Строки и перевода формы
Для этих символом в 1С описано перечисление Символы (Chars) со значениями:
ВК – символ возврата каретки;
ВТаб – вертикальная табуляция;
НПП – неразрывный пробел;
ПС – перевод строки;
ПФ – перевод формы (страницы);
Таб (Tab) – горизонтальная табуляция.
Для удаления этих символов в строке можно использовать функцию замены СтрЗаменить(). Можно также использовать символы с соответствующими кодами по ASCII или Unicode. Например, вместо Символы.ВК и Символы.ПС поставить соответственно Символ(10) и Символ(13).
Строка = СтрЗаменить(" Привет! Привет!", Символы.таб,"");
Строка = СтрЗаменить(" Привет! Привет!", Символы.(13),"");
5. Еще несколько способов удаления лишних пробелов в строке в 1С
По умолчанию программа "1С:Предприятие 8" преобразует значения типа Число и Дата к строке в соответствии с национальными установками. В меню «Администрирование → Региональные установки информационной базы» можно изменить и отдельные параметры форматирования дат и чисел, а также представление значений типа Булево. Например, можно в конкретной информационной базе отключить разделение триад числовых значений. Тогда при представлении числа в виде строки система не будет добавлять лишний пробел, а нам не нужно будет его, в последствии, удалять.
Вариант, когда нужно из многострочия получить одну строку, то есть убрать лишние пробелы ПС. Сделать это можно, используя функцию СтрПолучитьСтроку(<Строка>, <НомерСтроки>).
Смоделируем ситуацию для примера. Наша задача – убрать убрать лишние пробелы в строке и символы перевода строки.
Читайте также: