Тип «Строка»
Экранирование символов
Некоторые привычные символы в строковых литералах необходимо экранировать.
В строковых литералах обратный слеш и кавычки экранируются символом обратного слеша — \
.
Пример использования символов «\» и «"» в строковых литералах:
РабочийК аталог = "C:\test\";
пер РабочийКаталог = "C:\\test\\"
Фраза = "Язык ""«Элемента»""";
пер Фраза = "Язык \"«Элемента»\""
Подробнее про управляющие последовательности символов.
Интерполяция строк
Интерполяция строк — это новая возможность, которая позволяет встроить в строковые константы значение переменной или выражение.
Пример использования переменной:
Счетчик = 1;
Всего = 15;
Сообщить("Итерация № " + Строка(Счетчик) + " из " + Строка(Всего));
пер Счетчик = 1
пер Всего = 15
пер Строка = "Итерация № %Счетчик из %Всего"
Подробнее про интерполяцию строк.
При интерполяции выражений вы сразу можете указать и форматную строку, которая будет применена к результату выражения.
Пример использования выражения «Время.Сейчас()» с форматированием «ЧЧ:мм»:
Сообщить("Сейчас " + Формат(ТекущаяДата(), "ДФ=ЧЧ:мм"));
пер ТочноеВремя = "Сейчас ${Время.Сейчас()|ЧЧ:мм}"
Для ввода фигурных скобок {
и }
используйте сочетание клавиш Alt + 9 и Alt + 0. Для ввода вертикальной черты |
используйте сочетание клавиш Alt + \ (подробнее).
Многострочные литералы
Многострочные литералы пишутся проще. Теперь они полностью сохраняют форматирование по открывающей кавычке и нет необходимости писать вертикальную черту |
слева.
Пример многострочного литерала:
СтрокаXml =
"<note>
| <heading>Описание объектной модели</heading>
| <body>В основании всей иерархии типов лежит тип Объект.</body>
|</note>";
знч СтрокаXml =
"<note>
<heading>Описание объектной модели</heading>
<body>В основании всей иерархии типов лежит тип Объект.</body>
</note>"
Подробнее про многострочные литералы.
Методы
У экземпляра типа Строка
есть методы.
Пример использования методов Найти(), Подстрока() и ПодстрокаСначала():
Строки = "первый;второй";
Разделитель = СтрНайти(Строки, ";");
Первый = Лев(Строки, Разделитель - 1);
Второй = Сред(Строки, Разделитель + 1, СтрДлина(Строки) - Разделитель);
пер Строки = "первый;второй"
пер Разделитель = Строки.Найти(";")
пер Первый = Строки.ПодстрокаСНачала(Разделитель)
пер Второй = Строки.Подстрока(Разделитель + 1)