Работа со строками
17 мин
Инициализация
Для инициализации строки используется строковый литерал.
Текст
=
"Это строковый литерал"
;
Сообщить
(
Текст
);
// Это строковый литерал
Операции
Операция соединения строк оператором "+" называется конкатенацией.
ПолнаяСтрока = "первая часть строки " + "и вторая часть строки";
Сообщить(ПолнаяСтрока); // первая часть строки и вторая часть строки
ЭлектроннаяПочта = "test@test.ru";
ТекстСообщения = "Уведомление об обновлении успешно отправлено на адрес электронной почты " + ЭлектроннаяПочта;
Сообщить(ТекстСообщения); // Уведомление об обновлении успешно отправлено на адрес электронной почты test@test.ru
Если нужно использовать двойные кавычки внутри строки, то нужно в месте использования написать их дважды "".
Сообщить("Двойные кавычки - "" "); // Двойные кавычки - "
В строковых литералах допустимы переносы строки, таким образом создаются многострочные строки.
Перенос осуществляется двумя способами:
1. Используя "|"
МногострочнаяСтрока = "Это
|многострочная
|строка";
Сообщить(МногострочнаяСтрока);
//Это
//многострочная
//строка
2. Записывая строковые литералы подряд
МногострочнаяСтрока = "Это" "многострочная" "строка";
Сообщить(МногострочнаяСтрока);
МногострочнаяСтрока = "Это"
"многострочная"
"строка";
Сообщить(МногострочнаяСтрока);
При работе со строками используется ряд специальных символов. К ним так же применяются все правила для работы со строками:
- Символы.ВК - Возврат каретки. Используется для возврата курсора на начало следующей строки.
- Символы.ВТаб - Символ табуляции (вертикальной). Перемещает курсор на следующую вертикальную табуляцию ниже
- Символы.НПП - Неразрывный пробел. Пробел, по которому не должен выполняться перенос на другую строку или другое разбиение текста при форматировании. Часто используется в строках с числами
- Символы.ПС - Перевод строки. Переход на новую строку. Символы.ПС + Символы.ВК - имитирует нажатие Enter на клавиатуре, т.е переходит на строку ниже и возвращает курсор на начало
- Символы.ПФ - Перевод формы (страницы). Позволяет разбить текст на страницы при печати
- Символы.Таб - Символ табуляции (горизонтальной). Аналогично привычному Tab на клавиатуре, переходит в положение кратное 4, 8, 12 пробелам
Вместе с пробелом эти символы для ряда функций образуют "незначащие символы". Т.к по существу не несут информации.
Многострочную строку можно получить путем конкатенации строки с символом переноса.
ТекстОшибки = "Обнаружены неправильные настройки облачной подписи";
ТекстСообщения = ТекстОшибки + Символы.ПС + "Проверьте настройки учетной записи";
Сообщить(ТекстСообщения);
//Обнаружены неправильные настройки облачной подписи
//Проверьте настройки учетной записи
Функции работы со строками
Рассмотрим функции работы со строками. Полное описание можно почитать в Синтакс-помощнике
1. ВРег(<Строка>)
- <Строка> (обязательный) - исходная строка.
Возвращает строку, где все символы строки преобразованы в верхний регистр.
Префикс = "ВнешнийОтчет";
Результат = ВРег(Префикс);
Сообщить(Результат); // "ВНЕШНИЙОТЧЕТ";
2. НРег(<Строка>)
- <Строка> (обязательный) - исходная строка.
Возвращает строку, где все символы строки преобразованы в нижний регистр.
РасширениеЭлемента = ".XML";
Результат = НРег(РасширениеЭлемента);
Сообщить(Результат); // .xml
3. КодСимвола(<Строка>, <НомерСимвола>)
- <Строка> (обязательный) - исходная строка.
- <НомерСимвола> (необязательный) - номер символа в строке, код которого нужно получить. Нумерация с 1. Если не указывать равно 1.
Возвращает код переданного символа, если строка содержит несколько символов, то код с определенного номера из <НомерСимвола>.
КодСимвола = КодСимвола("а");
Сообщить(КодСимвола); // 1072
4. Символ(<КодСимвола>)
- <КодСимвола> (обязательный) - код получаемого символа.
Возвращает символ по переданному коду. Работает обратно функции КодСимвола()
СимволА = Символ(1072);
Сообщить(СимволА); // а
5. Лев(<Строка>, <ЧислоСимволов>), Прав(<Строка>, <ЧислоСимволов>)
- <Строка> (обязательный) - исходная строка.
- <ЧислоСимволов> (обязательный) - количество выбираемых символов.
Возвращает строку первых символов в количестве <ЧислоСимволов> для Лев() - слева, для Прав() - справа.
ИнициалИмени = Лев("Владимир", 1);
Сообщить(ИнициалИмени); // В
ИмяФайла = "Архив.zip";
РасширениеФайла = Прав(ИмяФайла, 3);
Сообщить(РасширениеФайла); // zip
6. ПолучитьСклоненияСтроки(<СклоняемаяСтрока>, <ОписаниеСтроки>, <ФорматнаяСтрока>)
- <СклоняемаяСтрока> (обязательный) - строка, которую нужно просклонять.
- <ОписаниеСтроки> (необязательный) - строка, содержит информацию о строке, которую нужно просклонять. Задается по шаблону "Параметр = ... ; Параметр = ..." и тд. Допустимы Параметры Л - код локализации, ПЛ - пол в виде слов "Мужской", "Женский"
- <ФорматнаяСтрока> - (необязательный) - строка, содержит параметры форматирования. Шаблон тот же, что и в описании строки. Допустим параметр ПД - Падеж, в виде "Именительный", "Родительный" и т.п.
Возвращает массив, в котором перечислены возможные варианты склонения строки.
Например, в <ОписаниеСтроки> укажем код локализации "Л = ru_RU", а в <ФорматнаяСтрока> падеж.
Результат = ПолучитьСклоненияСтроки("Программист", "Л = ru_RU", "ПД = Родительный")[0];
Сообщить(Результат); // Программиста
7. ПолучитьСклоненияСтрокиПоЧислу(<СклоняемаяСтрока>, <Число>, <СклоняемыеЕдиницыИзмерения>, <ОписаниеСтроки>, <ФорматнаяСтрока>, <ФорматнаяСтрокаЧисла>).
- <СклоняемаяСтрока> (обязательный) - строка, которую нужно просклонять.
- <Число> (обязательный) - число, относительно которого будет выполнено склонение.
- <СклоняемыеЕдиницыИзмерения> (необязательный) - строка с единицей измерения, например "килограмм". Поддерживается передача через запятую измерений для целой, дробной части и количества разрядов. Например "Килограмм, грамм, 2".
- <ОписаниеСтроки> (необязательный) - строка, задается по шаблону "Параметр = ... ; Параметр = ..." и тд. В параметрах код локализации "Л", тип числительного "ЧС" в виде "Количественное" (отвечает на вопрос Сколько?), "Порядковое" (отвечает на вопрос Какой по счету?). Если не указано, то "Количественное".
- <ФорматнаяСтрока> (необязательный) - строка с параметрами форматирования, шаблон тот же что и в описании строки. Среди параметров падеж "ПД" в виде "Именительный", "Родительный" и тп. Представление числа "ПЧ" в виде "Число", "ЧислоПрописью", "ЧислоСОкончанием" (12-го автомобиля). Если не задано, то "Авто" - для порядковых "ЧислоСОкончанием", для количественных "Число".
- <ФорматнаяСтрокаЧисла> (необязательный) - строка, содержащая параметры форматирования, которые допустимы в методе Формат().
Возвращает массив, содержащий склонение в зависимости от числа.
ЧислоДокументов = ПолучитьСклоненияСтрокиПоЧислу("в наличии", 10, "документ", "Л = ru_RU; ЧС=Количественное", "ПД=Винительный")[0];
Сообщить(ЧислоДокументов);
// в наличии 10 документов
8. ПустаяСтрока(<Строка>)
- <Строка> (обязательный) - исходная строка.
Проверяет строку на наличие значащих символов, возвращает Истина, если строка пустая, Ложь в противном случае.
Текст = " ";
Результат = ПустаяСтрока(Текст);
Сообщить(Результат); // Да
Фамилия = "Иванов";
Если ПустаяСтрока(Фамилия) Тогда
Сообщить("Введите фамилию");
Иначе
Сообщить("Фамилия введена успешно");
КонецЕсли;
// Фамилия введена успешно
9. СокрЛ(<Строка>), СокрП(<Строка>), СокрЛП(<Строка>)
- <Строка> (обязательный) - исходная строка.
Возвращает строку с удаленными незначащими символами слева, справа, слева и права соответственно.
Наименование = " ручка ";
СокращениеСлева = СокрЛ(Наименование);
Сообщить(СокращениеСлева); // "ручка "
СокращениеСправа = СокрП(Наименование);
Сообщить(СокращениеСправа); // " ручка"
СокращениеСлеваСправа = СокрЛП(Наименование);
Сообщить(СокращениеСлеваСправа); // "ручка"
10. Сред(<Строка>, <НачальныйНомер>, <ЧислоСимволов>)
- <Строка> (обязательный) - исходная строка.
- <НачальныйНомер> (обязательный) - начальный номер символа, с которого начинается выборка. Счет с 1.
- <ЧислоСимволов> (необязательный) - количество выбираемых символов. Если не указан, то до конца строки.
Возвращает строку символов начиная с <НачальныйНомер> в количестве <ЧислоСимволов>, все символы считаются.
Результат = Сред(" абв", 2, 1);
Сообщить(Результат); // а
Результат = Сред(" абв", 2, 2);
Сообщить(Результат); // "аб"
Результат = Сред(" абв", 4, 1);
Сообщить(Результат); // в
Результат = Сред(" абв", 1, 3);
Сообщить(Результат); // " аб"
ПредставлениеНомеров = "Порядковый номер: 3360, 8696";
ПервыйНомер = Сред(ПредставлениеНомеров, 19, 4);
Сообщить(ПервыйНомер); // 3360
11. СтрДлина(<Строка>)
- <Строка> (обязательный) - исходная строка.
Возвращает число - количество символов в строке.
Результат = СтрДлина("12");
Сообщить(Результат); // 2
12. СтрЗаканчиваетсяНа(<Строка>, <СтрокаПоиска>), СтрНачинаетсяС(<Строка>, <СтрокаПоиска>)
- <Строка> (обязательный) - проверяемая строка.
- <СтрокаПоиска> (обязательный) - искомая строка.
СтрЗаканчиваетсяНа() возвращает Истина, если строка оканчивается на <СтрокаПоиска>, СтрНачинаетсяС() - если начинается.
ИмяФайла = "Патч.zip";
Результат = СтрЗаканчиваетсяНа(ИмяФайла, ".zip");
Сообщить(Результат); // Да
АвторВерсии = "<АвторВерсии> Иванов </АвторВерсии>";
Результат = СтрНачинаетсяС(АвторВерсии, "<АвторВерсии>");
Сообщить(Результат); // Да
13. СтрПолучитьСтроку(<Строка>, <НомерСтроки>)
- <Строка> (обязательный) - исходная строка.
- <НомерСтроки> (обязательный) - число, с номером получаемой строки. Нумерация с 1.
Возвращает строку многострочной строки по номеру
МногострочнаяСтрока = "Первая строка
| Вторая строка
| Третья строка";
ТекстВторойСтроки = СтрПолучитьСтроку(МногострочнаяСтрока, 2);
Сообщить(ТекстВторойСтроки); // Вторая строка
14. СтрШаблон(<Шаблон>, <Значение1-Значение10>)
- <Шаблон> - строка с параметрами %1, %2 и др.
- <Значение1-Значение10> - значения, которые будут подставлены в шаблон.
Возвращает строку после подстановки значений в шаблон.
ТекстШаблона = "Первый параметр %1, второй параметр %2";
Результат = СтрШаблон(ТекстШаблона, "Текст", 5);
Сообщить(Результат); // Первый параметр Текст, второй параметр 5
ИНН = "1234567890";
КПП = 1234011001;
ЭлектроннаяПочта = "test@test.ru";
ДанныеОрганизации = СтрШаблон("ИНН: %1, КПП: %2, Email: %3", ИНН, КПП, ЭлектроннаяПочта);
Сообщить(ДанныеОрганизации); // ИНН: 1234567890, КПП: 1 234 011 001, Email: test@test.ru
15. СтрРазделить(<Строка>, <Разделитель>, <ВключатьПустые>)
- <Строка> (обязательный) - строка, которую нужно разделить.
- <Разделитель> (обязательный) - строка символов, каждый из которых является индивидуальным разделителем.
- <ВключатьПустые> (необязательный) - булево, если Истина, то включает пустые строки в возвращаемое значение. Если не указывать, то Истина
Возвращает массив строк, разделенных по разделителю.
Текст
=
"Первая подстрока, вторая подстрока"
;
Подстроки
=
СтрРазделить
(
Текст
,
","
);
Для
Каждого
Строка
Из
Подстроки
Цикл
Сообщить
(
Строка
);
КонецЦикла;
// Первая подстрока
// вторая подстрока
16. СтрСоединить(<Строки>, <Разделитель>)
- <Строки> (обязательный) - Массив или ФиксированныйМассив содержащий объединяемые строки.
- <Разделитель> (необязательный) - строка, которая будет вставлена между объединяемыми строками. Если не задана, то строки будут слиты без разделителя.
Возвращает строку, соединив массив строк <Строки> в одну с разделителем между ними.
Подстроки = Новый Массив;
Подстроки.Добавить("Первая строка");
Подстроки.Добавить("вторая строка");
Текст = СтрСоединить(Подстроки, ", ");
Сообщить(Текст); // Первая строка, вторая строка
17. СтрСравнить(<Строка1>, <Строка2>)
- <Строка1>, <Строка2> (обязательный) - строка для сравнения.
Сравнивает две строки, возвращает число:
- -1 - вторая строка больше
- 1 - первая строка больше
- 0 - строки равны
Строки сравниваются посимвольно по коду символов.
ПерваяСтрока = "8.3.22";
ВтораяСтрока = "8.3.23";
Результат = СтрСравнить(ПерваяСтрока, ВтораяСтрока);
Сообщить(Результат); // -1
18. СтрЧислоВхождений(<Строка>, <ПодстрокаПоиска>)
- <Строка> (обязательный) - исходная строка.
- <ПодстрокаПоиска> (обязательный) - искомая подстрока.
Возвращает число вхождений <ПодстрокаПоиска> в строке <Строка>.
Адрес = "test@test.ru";
ЧислоВхождений = СтрЧислоВхождений(Адрес, "@");
Сообщить(ЧислоВхождений); // 1
19. СтрЧислоСтрок(<Строка>)
- <Строка> (обязательный) - исходная строка.
Возвращает число строк в многострочной строке.
МногострочнаяСтрока = "Это
|многострочная
|строка";
ЧислоСтрок = СтрЧислоСтрок(МногострочнаяСтрока);
Сообщить(ЧислоСтрок);
20. ТРег(<Строка>)
- <Строка> (обязательный) - преобразуемая строка
Возвращает строку в которой каждое новое слово начинается с верхнего регистра, остальные символы нижнего регистра.
ФИО = "иванов иван ивАнОвич";
Результат = ТРег(ФИО);
Сообщить(Результат); // Иванов Иван Иванович
21. СтрЗаменить(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>)
- <Строка> (обязательный) - исходная строка.
- <ПодстрокаПоиска> (обязательный) - искомая подстрока.
- <ПодстрокаЗамены> (обязательный) - подстрока, на которую производится замена
Ищет в <Строка> строку <ПодстрокаПоиска> заменяет ее на <ПодстрокаЗамены> и возвращает полученную строку.
Результат = СтрЗаменить("Наименование товара: Ручка шариковая", "Ручка шариковая", "Книга");
Сообщить(Результат); // Наименование товара: Книга
22 . СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>)
- <Строка> (обязательный) - исходная строка.
- <ПодстрокаПоиска> (обязательный) - искомая подстрока.
- <НаправлениеПоиска> (необязательный) - НаправлениеПоиска.СКонца или НаправлениеПоиска.СНачала.
- <НачальнаяПозиция> (необязательный) - число - количество символов от 1 до длины строки слева. Если параметр не задан, то определяется по направлению поиска СНачала - 1, СКонца - длина строки.
- <НомерВхождения> (необязательный) - число, номер вхождения которое будет найдено.
Возвращает число, позиция первого знака найденной подстроки. Если ничего не найдено, то 0.
Текст = "123456789";
Результат = СтрНайти(Текст, "3");
Сообщить(Результат); // 3
23. НСтр(<ИсходнаяСтрока>, <КодЯзыка>)
- <ИсходнаяСтрока> (обязательный) - строка сформированная по шаблону "КодЯзыка = 'Текст'; КодЯзыка = 'Текст' ... "
- <КодЯзыка> (необязательный) - строка с кодом. Если не указано, то язык определенный по текущему пользователю.
Возвращает строку на языке текущего пользователя или указанном из набора строк на разных языках конфигурации.
Сообщить(НСтр("ru = 'Добрый вечер'; en = 'Good Evening'")); // Добрый вечер
24. Формат(<Значение>, <ФорматнаяСтрока>)
- <Значение> (обязательный) - Число, Дата или Булево - значение для которого нужно сформировать представление.
- <ФорматнаяСтрока> (необязательный) - Строка, представляет собой код, который можно сконструировать конструктором форматной строки. Например "ДФ=dd.MM.yyyy".
Возвращает строку, полученную в результате форматирования.
Привести дату с временем 03.02.2000 1:02:03 к виду 03.02.2000.
Дата = '20000203010203'; // 03.02.2000 1:02:03
ФорматированнаяДата = Формат(Дата, "ДФ=dd.MM.yyyy");
Сообщить(ФорматированнаяДата); // 03.02.2000
Примеры
1. Сравнить строки без учета регистра.
Префикс = "ВнешнийОтчет";
Текст = ВРег(Префикс);
Если Текст = ВРег(Префикс) Тогда
Сообщить("Тексты равны");
Иначе
Сообщить("Тексты НЕ равны");
КонецЕсли;
// Тексты не равны;
2. Отличить латинскую Е от кириллической E.
КириллическаяЕ = Символ(1045);
ЛатинскаяЕ = Символ(69);
ПроверяемыйТекст = "E";
Если ПроверяемыйТекст = КириллическаяЕ Тогда
ТекстСообщения = "Кириллическая 'E'";
ИначеЕсли ПроверяемыйТекст = ЛатинскаяЕ Тогда
ТекстСообщения = "Латинская 'E'";
Иначе
ТекстСообщения = "Не известный символ";
КонецЕсли;
Сообщить(ТекстСообщения); // Латинская 'E'
3. Перебрать все символы строки
Текст = "123456789";
Для НомерСимвола = 1 По СтрДлина(Текст) Цикл
Символ = Сред(Текст, НомерСимвола, 1);
Сообщить(Символ);
КонецЦикла;
4. Удалить лишние символы в строке
Результат = СтрЗаменить("Наименование товара: ~~Ручка шариковая", "~", "");
Сообщить(Результат); // Наименование товара: Ручка шариковая
5. Сформировать шаблон текста ошибки о том что файл не найден
ИмяФайла = "Задание.txt";
ТекстОшибки = СтрШаблон(НСтр("ru = 'Файл %1 не найден';
|en = 'File ""%1"" is not found'"), ИмяФайла);
Сообщить(ТекстОшибки); // Файл Задание.txt не найден
6. Объединить два текста запроса в один
ТекстыЗапроса = Новый Массив;
ТекстОбъединитьВсе =
"
|
|ОБЪЕДИНИТЬ ВСЕ
|
|";
ТекстЗапросаСотрудники =
"ВЫБРАТЬ
| Сотрудники.Ссылка КАК Ссылка
|ИЗ
| Справочник.Сотрудники КАК Сотрудники";
ТекстыЗапроса.Добавить(ТекстЗапросаСотрудники);
ТекстЗапросаПользователи =
"ВЫБРАТЬ
| Пользователи.Ссылка КАК Ссылка
|ИЗ
| Справочник.Пользователи КАК Пользователи";
ТекстыЗапроса.Добавить(ТекстЗапросаПользователи);
ТекстЗапросаСотрудникиИПользователи = СтрСоединить(ТекстыЗапроса, ТекстОбъединитьВсе);
Сообщить(ТекстЗапросаСотрудникиИПользователи);
//ВЫБРАТЬ
// Сотрудники.Ссылка КАК Ссылка
//ИЗ
// Справочник.Сотрудники КАК Сотрудники
//
//ОБЪЕДИНИТЬ ВСЕ
//
//ВЫБРАТЬ
// Пользователи.Ссылка КАК Ссылка
//ИЗ
// Справочник.Пользователи КАК Пользователи
7. Программно сформировать текст запроса, получающего все элементы указанного справочника
ИмяСправочника = "Справочник.Пользователи";
ТекстЗапроса =
"ВЫБРАТЬ
| Справочник.Ссылка КАК Ссылка
|ИЗ
| &ИмяСправочника КАК Справочник";
ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "&ИмяСправочника", ИмяСправочника);
Сообщить(ТекстЗапроса);
//ВЫБРАТЬ
// Справочник.Ссылка КАК Ссылка
//ИЗ
// Справочник.Пользователи КАК Справочник
8. Удалить справа указанное количество символов
ЧислоСимволов = 4;
Текст = "Пример №1 шшш";
Текст = Лев(Текст, СтрДлина(Текст) - ЧислоСимволов);
Сообщить(Текст); // Пример №1
9. Только цифры в строке
Значение = "***123абв!№~";
НецифровыеСимволы = СтрСоединить(СтрРазделить(Значение, "1234567890,."));
Значение = СтрСоединить(СтрРазделить(Значение, НецифровыеСимволы));
ОписаниеТипаЧисло = Новый ОписаниеТипов("Число");
Результат = ОписаниеТипаЧисло.ПривестиЗначение(Значение);
Сообщить(Результат); // 123
10. Удалить все возможные пробелы из строки
ИсходнаяСтрока = " абв ";
КодыПробеловЮникодСтрока = "9, 10, 11, 12, 13, 32, 133, 160, 5760, 8192, 8193, 8194, 8195, 8196,
| 8197, 8198, 8199, 8200, 8201, 8202, 8232, 8233, 8239, 12288, 6158, 8203, 8204, 8205, 8288, 65279";
КодыПробеловЮникодМассив = СтрРазделить(КодыПробеловЮникодСтрока, " ," + Символы.ПС, Ложь);
Для Каждого Код Из КодыПробеловЮникодМассив Цикл
ИсходнаяСтрока = СтрЗаменить(ИсходнаяСтрока, Символ(Код), "");
КонецЦикла;
Сообщить(ИсходнаяСтрока); // абв
11. Убрать разделитель групп в числе
Число = 123123;
Сообщить(Число); //123 123
Представление = Формат(Число, "ЧГ=0");
Сообщить(Представление); //123123
12. Проверить является ли строка многострочной
МногострочнаяСтрока = "Это
|многострочная
|строка";
Если СтрЧислоСтрок(МногострочнаяСтрока) > 1 Тогда
Сообщить("Многострочная");
Иначе
Сообщить("Однострочная");
КонецЕсли;
// Многострочная
13. Проверить наименование на наличие кавычек
Наименование = " ""ООО Рога и Копыта"" ";
КоличествоКавычек = СтрЧислоВхождений(Наименование, """");
Если КоличествоКавычек > 0 Тогда
Сообщить("Наименование содержит кавычки");
Иначе
Сообщить("Наименование НЕ содержит кавычек");
КонецЕсли;
// Наименование НЕ содержит кавычек
14. Скрыть символы номера
СимволовСправа = 4;
СимволовСлева = 2;
КоличествоОтображаемыхСимволов = СимволовСправа + СимволовСлева;
ПолныйНомер = "+71234567891";
СимволыМаскировки = "";
Для Счетчик = 1 По СтрДлина(ПолныйНомер) - КоличествоОтображаемыхСимволов Цикл
СимволыМаскировки = СимволыМаскировки + "*";
КонецЦикла;
ЧастиНомера = Новый Массив;
ЧастиНомера.Добавить(Лев(ПолныйНомер, СимволовСлева));
ЧастиНомера.Добавить(СимволыМаскировки);
ЧастиНомера.Добавить(Прав(ПолныйНомер, СимволовСправа));
Результат = СтрСоединить(ЧастиНомера);
Сообщить(Результат); // +7******7891
15. Привести дату и время встречи к виду 02 января 3030 г. в 18:55
ДатаВремяВстречи = '30300102185500';
Результат = Формат(ДатаВремяВстречи, "Л=ru_RU; ДФ='dd MMMM yyyy ''г. в'' HH:mm'; ДЛФ=DD");
Сообщить(Результат); // 02 января 3030 г. в 18:55
16. Проверить является ли символ цифрой
Коды символов всех цифр от 48 по 57, таким образом для проверки является ли символ цифрой используем следующий код.
КодСимвола = КодСимвола("а");
Результат = КодСимвола >= 48 И КодСимвола <= 57;
Сообщить(Результат); // Нет