Функция найти последнее вхождение в 1с бухгалтерии. Функции преобразования регистра текста

Строки в 1С 8.3 во встроенном языке 1с представляют собой значения примитивного типа Строка . Значения данного типа содержат строку в формате Unicode произвольной длины. Переменные строкового типа являются набором символов заключенных в кавычки.

Пример 1. Создадим строковую переменную с текстом.

СтроковаяПеременная = "Привет мир!";

Функции работы со строками в 1с 8.3

В данном разделе будут приведены основные функции, позволяющие изменять строки в 1с, либо анализировать информацию содержащуюся в них.

СтрДлина

СтрДлина(<Строка>) . Возвращает количество символов содержащихся в строке, переданной в параметре.

Пример 2. Посчитаем количество символов в строке «Привет мир!».

Строка = "Привет мир!"; КоличествоСимволов = СтрДлина(Строка); Сообщить(КоличествоСимволов);

Итогом выполнения данного кода будет вывод на экран количества символов строки: 11.

СокрЛ

СокрЛ(<Строка>) . Отсекает незначащие символы, стоящие слева от первого значащего символа в строке.
Незначащие символы:

  • пробел;
  • неразрывный пробел;
  • табуляция;
  • возврат каретки;
  • перевод строки;
  • перевод формы (страницы).

Пример 3. Убрать все пробелы с левой стороны строки » мир!» и присоединить к ней строку «Привет «.

Строка = СокрЛ(" мир!"); Строка = "Привет "+Строка; Сообщить(Строка);

Итогом выполнения данного кода будет вывод на экран строки «Привет мир!».

СокрП

СокрП(<Строка>) . Отсекает незначащие символы, стоящие справа от первого значащего символа в строке.

Пример 4. Сформировать из строк «Привет » и » мир!» фразу «Привет мир!»

Строка = СокрП("Привет ")+" "+СокрЛ(" мир!"); Сообщить(Строка);

СокрЛП

СокрЛП(<Строка>) . Отсекает незначащие символы, стоящие справа от первого значащего символа в строке, также отсекает незначащие символы, стоящие слева от первого значащего символа в строке. Данная функция используется чаще предыдущих двух, так как она более универсальна.

Пример 5. Убрать незначащие символы стоящие слева и справа в наименовании контрагента.

Контрагент = Справочники.Контрагенты.НайтиПоРеквизиту("ИНН", "0777121211"); КонтрагентОбъект = Контрагент.ПолучитьОбъект(); КонтрагентОбъект.Наименование = СокрЛП(КонтрагентОбъект.Наименование); КонтрагентОбъект.Записать();

Лев

Лев(<Строка>, <ЧислоСимволов>) . Получает первые символы строки, число символов указывается в параметре ЧислоСимволов.

Пример 6. Пусть в структуре Сотрудник содержаться имя, фамилия и отчество сотрудника. Получить строку с фамилией и инициалами.

ИнициалИмени = Лев(Сотрудник.Имя, 1); ИнициалОтчества = Лев(Сотрудник.Отчество, 1); ПолноеИмя = Сотрудник.Фамилия + " " + ИнициалИмени + "." + ИнициалОтчества + ".";

Прав

Прав(<Строка>, <ЧислоСимволов>) . Получает последние символы строки, число символов указывается в параметре ЧислоСимволов. Если указанное количество символов превышает длину строки, то возвращается вся строка.

Пример 7. Пусть в конце строковой переменной записана дата в формате «ггггммдд», получить строку с датой и преобразовать ее к типу Дата .

Строка = "Текущая дата: 20170910"; СтрокаДата = Прав(Строка, 8); Дата = Дата(СтрокаДата);

Сред

Сред(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) . Получает подстроку из строки переданной в параметре Строка , начиная с символа номер которого указан в параметре НачальныйНомер и длиной переданной в параметр ЧислоСимволов. Нумерация символов в строке начинается с 1. Если в параметре НачальныйНомер указано значение, меньшее или равное нулю, то параметр принимает значение 1. Если параметр ЧислоСимволов не указан, то выбираются символы до конца строки.

Пример 8. Пусть в строковой переменной начиная с девятой позиции содержится код региона, следует получить его и записать в отдельную строку.

Строка = "Регион: 99 г. Москва"; Регион = Сред(Строка, 9, 2);

СтрНайти

СтрНайти(<Строка>, <ПодстрокаПоиска>, <НаправлениеПоиска>, <НачальнаяПозиция>, <НомерВхождения>) . Осуществляет поиск указанной подстроки в строке, возвращает номер позиции первого символа найденной подстроки. Рассмотрим параметры данной функции:

  • Строка . Исходная строка;
  • ПодстрокаПоиска . Искомая подстрока;
  • НаправлениеПоиска . Указывает направление поиска подстроки в строке. Может принимать значения:
    • НаправлениеПоиска.СНачала ;
    • НаправлениеПоиска.СКонца ;
  • НачальнаяПозиция . Указывает позицию в строке, с которой начинается поиск;
  • НомерВхождения . Указывает номер вхождения искомой подстроки в исходной строке.

Пример 9. В строке «Привет мир!» определить позицию последнего вхождения символа «и».

НомерПозиции = СтрНайти("Привет мир!", "и", НаправлениеПоиска.СКонца); Сообщить(НомерПозиции);

Итогом выполнения данного кода будет вывод на экран номера последнего вхождения символа «и»: 9.

ВРег

ВРег(<Строка>) . Преобразует все символы указанной строки в 1с 8 к верхнему регистру.

Пример 10. Преобразовать строку «привет мир!» к верхнему регистру.

СтрокаВрег = ВРег("привет мир!"); Сообщить(СтрокаВрег);

Итогом выполнения данного кода будет вывод на экран строки «ПРИВЕТ МИР!»

НРег

НРег(<Строка>) . Преобразует все символы указанной строки в 1с 8 к нижнему регистру.

Пример 11. Преобразовать строку «ПРИВЕТ МИР!» к нижнему регистру.

СтрокаНрег = НРег("ПРИВЕТ МИР!"); Сообщить(СтрокаВрег);

Итогом выполнения данного кода будет вывод на экран строки «привет мир!»

ТРег

ТРег(<Строка>) . Преобразует строку следующим образом: первый символ каждого слова переводится в верхний регистр, остальные символы слова переводятся в нижний регистр.

Пример 12. Сделать заглавными первые буквы слов в строке «привет мир!».

СтрокаТрег = ТРег("привет мир!"); Сообщить(СтрокаТрег);

Итогом выполнения данного кода будет вывод на экран строки «Привет Мир!»

Символ

Символ(<КодСимвола>) . Получает символ по его коду в кодировке Unicod.

Пример 13. Добавим слева и справа в строку «Привет Мир!» символ ★

СтрокаСоЗвездами = Символ("9733")+"Привет Мир!"+Символ("9733"); Сообщить(СтрокаСоЗвездами);

Итогом выполнения данного кода будет вывод на экран строки «★Привет Мир!★»

КодСимвола

КодСимвола(<Строка>, <НомерСимвола>) . Получает код символа в кодировке Unicode из строки указанной в первом параметре, расположенного в позиции указанной во втором параметре.

Пример 14. Узнать код последнего символа в строке «Привет Мир!».

Строка = "Привет Мир!"; КодСимвола = КодСимвола(Строка, СтрДлина(Строка)); Сообщить(КодСимвола);

Итогом выполнения данного кода будет вывод на экран кода символа «!» — 33.

ПустаяСтрока

ПустаяСтрока(<Строка>) . Проверяет состоит ли строка только из незначащих символов, то есть является ли она пустой.

Пример 15. Проверить является ли пустой строка состоящая из трех пробелов.

Пустая = ПустаяСтрока(" "); Сообщить(Пустая);

Итогом выполнения данного кода будет вывод на экран слова «Да» (строковое выражение логического значения Истина ).

СтрЗаменить

СтрЗаменить(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) . Находит в исходной строке все вхождения подстроки поиска и заменяет ее на подстроку замены.

Пример 16. В строке «Привет Мир!» заменить слово «Мир» на слово «Друзья».

Строка = СтрЗаменить("Привет Мир!", "Мир", "Друзья"); Сообщить(Строка);

Итогом выполнения данного кода будет вывод на экран строки «Привет Друзья!»

СтрЧислоСтрок

СтрЧислоСтрок(<Строка>) . Позволяет посчитать количество строк в многострочной строке. Для перехода на новую строку в 1с 8 используется символ ПС (символ перевода строки).

Пример 17. Определить число строк в тексте:
«Первая строка
Вторая строка
Третья строка»

Число = СтрЧислоСтрок("Первая строка"+Символы.ПС +"Вторая строка"+Символы.ПС +"Третья строка"); Сообщить(Число);

Итогом выполнения данного кода будет вывод на экран количества строк в тексте: 3

СтрПолучитьСтроку

СтрПолучитьСтроку(<Строка>, <НомерСтроки>) . Получает строку в многострочной строке по ее номеру. Нумерация строк начинается с 1.

Пример 18. Получить последнюю строку в тексте:
«Первая строка
Вторая строка
Третья строка»

Текст = "Первая строка"+Символы.ПС +"Вторая строка"+Символы.ПС +"Третья строка"; ПоследняяСтрока = СтрПолучитьСтроку(Текст, СтрЧислоСтрок(Текст)); Сообщить(ПоследняяСтрока);

Итогом выполнения данного кода будет вывод на экран строки «Третья строка».

СтрЧислоВхождений

СтрЧислоВхождений(<Строка>, <ПодстрокаПоиска>) . Возвращает число вхождений указанной подстроки в строку. Функция чувствительна к регистру.

Пример 19. Определить сколько раз входит в строку «Строки в 1с 8.3 и 8.2» буква «с», вне зависимости от ее регистра.

Строка = "Строки в 1с 8.3 и 8.2"; ЧислоВхождений = СтрЧислоВхождений(Врег(Строка), "С"); Сообщить(ЧислоВхождений);

Итогом выполнения данного кода будет вывод на экран числа вхождений: 2.

СтрНачинаетсяС

СтрНачинаетсяС(<Строка>, <СтрокаПоиска>) . Проверяет начинается ли строка переданная в первом параметре, со строки во втором параметре.

Пример 20. Определить начинается ли ИНН выбранного контрагента с цифры 1. Пусть в переменной Контрагент Контрагенты .

ИНН = Контрагент.ИНН; НачинаетсяСЕдиницы = СтрНачинаетсяС(ИНН, "1"); Если НачинаетсяСЕдиницы Тогда //Ваш код КонецЕсли;

СтрЗаканчиваетсяНа

СтрЗаканчиваетсяНа(<Строка>, <СтрокаПоиска>) . Проверяет заканчивается ли строка переданная в первом параметре, на строку во втором параметре.

Пример 21. Определить заканчивается ли ИНН выбранного контрагента на цифру 2. Пусть в переменной Контрагент хранится ссылка на элемент справочника Контрагенты .

ИНН = Контрагент.ИНН; ЗаканчиваетсяНаДвойку = СтрЗаканчиваетсяНа(ИНН, "2"); Если ЗаканчиваетсяНаДвойку Тогда //Ваш код КонецЕсли;

СтрРазделить

СтрРазделить(<Строка>, <Разделитель>, <ВключатьПустые>) . Разделяет строку на части по указанным символам-разделителям и записывает полученные строки в массив. В первом параметре хранится исходная строка, во втором строка содержащая разделитель, в третьем указывается, нужно ли записывать в массив пустые строки (по умолчанию Истина ).

Пример 22. Пусть у нас есть строка содержащая числа разделенные символом «;», получить из строки массив чисел.

Строка = "1; 2; 3"; Массив = СтрРазделить(Строка, ";"); Для Сч = 0 По Массив.Количество() - 1 Цикл Попытка Массив[Сч] = Число(СокрЛП(Массив[Сч])); Исключение Массив[Сч] = 0; КонецПопытки КонецЦикла;

В результате выполнения будет получен массив с числами от 1 до 3-х.

СтрСоединить

СтрСоединить(<Строки>, <Разделитель>) . Преобразует массив строк из первого параметра в строку, содержащую все элементы массива через разделитель, указанный во втором параметре.

Пример 23. Используя массив чисел из предыдущего примера, получить исходную строку.

Для Сч = 0 По Массив.Количество() - 1 Цикл Массив[Сч] = Строка(Массив[Сч]); КонецЦикла; Строка = СтрСоединить(Массив, "; ");

В данной статье я расскажу вам про функцию быстрого поиска 1С Предприятие 8. Что такое быстрый поиск? Очень просто. Быстрый поиск — это один из способов навигации в больших списках записей 1С. Это могут быть списки документов, справочники , регистры — все то, что представлено таблицами.

Что такое быстрый поиск?

Функция быстрого поиска в документах 1С Предприятие чрезвычайно удобна и позволяет не пролистывать огромные массивы данных (к примеру, с помощью полосы прокрутки), а сразу перейти к нужному месту в списке. К сожалению, начинающие пользователи 1С Предприятие 8 (в том числе и 1С Бухгалтерии 8) поначалу не используют возможности быстрого поиска, предпочитая листать списки документов вручную (а они могут быть очень большими). Данная статья поможет вам разобраться с использованием быстрого поиска в 1С.

Прежде всего следует заметить, что в конфигурациях 1С Предприятие 8, построенных на управляемых формах , быстрый поиск работает иначе, чем в предыдущих версиях 1С. Поэтому разберем отдельно использование быстрого поиска в управляемых формах и в обычных.

Быстрый поиск в 1С Бухгалтерии 8.2

В версиях 1С Бухгалтерии с 8.0 по 8.2 функция предназначена именно для перехода к нужной части списка. Для примера посмотрите на окно плана счетов , приведённое на рисунке.


В окне выделена некоторая строка. Обратите внимание малозаметный треугольник из полосок, на который указывает красная стрелка. Как и в других программах Windows, где есть списки (например, в Проводнике), положение этого маркера (треугольника) определяет сортировку списка в целом — в какой колонке установлен маркер, по той и будет отсортирован весь список. На рисунке маркер стоит в колонке Код , следовательно счета в плане счетов будут отсортированы по коду.

Маркер можно перемещать с одной колонки на другую, щёлкая на нужной колонке (на ЗАГОЛОВКЕ колонки! ) мышкой. Если маркер и так уже стоит в текущей колонке, то щелчок приведет к изменению направления сортировки на противоположное (т.е. от большего к меньшему или наоборот). Это стандартное поведение для любых программ Windows. В чем же особенность этого маркера в 1С Предприятии и как это связано с быстрым поиском?

Быстрый поиск в списках 1С Предприятие 8 осуществляется по колонке, в которой стоит маркер. В данном случае быстрый поиск в плане счетов будет осуществляться по колонке Код.

Тут была важная часть статьи, но без JavaScript её не видно!

Как пользоваться быстрым поиском в 1С? Легко! Просто начните печатать то, что хотите найти в ДАННОЙ колонке , т.е. там, где стоит маркер. В примере на рисунке выше следует вводить номер счета. Например, вы хотите найти счет 50 Касса . В таком случае введите (мышкой щелкать никуда не нужно! ) число 50 с клавиатуры и если в данной колонке есть счет с таким номером (а он, конечно, есть), то список прокрутится до этой строки, а сама строка окажется выделенной. Результат показан на скриншоте плана счетов ниже.

сайт_

Текст, на который указывает стрелка, стирать потом не нужно — он сам исчезнет.

Если в приведенном примере начать вводить слово "Касса", то текст в нижней части окна будет вводится, а затем стираться. Происходит это потому, что как только начало вводимой строки быстрого поиска перестает совпадать с началом хотя бы одной строки в данной колонке, 1С Предприятие делает вывод, что искомая строка не найдена и автоматически её стирает. В связи с этим следует запомнить два правила .

В 1С Предприятии 8 быстрый поиск производится по началу строки, т.е. в колонке ищется совпадение вводимого текста с началом одной из строк этой колонки.
Отсюда вытекает важная рекомендация: при вводе данных в справочники именуйте элементы так, чтобы их было удобно искать при помощи быстрого поиска. Например, название контрагента лучше писать как "ИмяФирмы ООО", чем "ООО ИмяФирмы". И тем более не стоит использовать в названии кавычки и прочие ненужные символы (речь идет о заполнении поля Наименование в формах).

Если вы начали вводить текст, а он стирается — то, что вы ищете, отсутствует в данной колонке! В этом случае проверьте язык ввода, а также колонку в которой производится быстрый поиск. Типичная ошибка — выбрана не та колонка. Например, маркер установлен в колонке Код, а поиск производится по названию счета.

Быстрый поиск в 1С Бухгалтерии 8.3

Теперь посмотрим, чем отличается быстрый поиск в версии 1С Предприятие 8.3 . Использование во многом схоже с версией 8.2, однако есть одно существенное отличие, которое следует запомнить.

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

Как этим пользоваться, мы с вами сейчас выясним. Для начала посмотрите на скриншот окна плана счетов 1С Бухгалтерии 8.3, приведенный ниже.

сайт_

Как видите, тот же самый маркер в одной из колонок. Поиск так же производится по колонке, в которой установлен маркер. Это всё осталось без изменений. Однако, если начать вводить текст (в примере - номер счета), то произойдет следующее.

сайт_

Как видите, просто автоматически открылось окно поиска. Такое же точно окно откроется, если нажать на кнопку поиска на панели инструментов окна (на рисунке подчеркнута). В результате при нажатии в окне поиска кнопки Найти (на картинке скрыта за выпадающим меню) или просто Enter, то получиться следующий результат.

сайт_

Отсюда видно, что быстрый поиск в 1С Бухгалтерии 8.3 просто оставляет видимой часть списка, удовлетворяющую условиям поиска. При этом кнопка Найти пропадает, а вместо неё появляется линза с крестиком (на рис. подчеркнута), при нажатии на которую список возвращается в исходное состояние (при этом остаётся выделена строка, найденная в результате быстрого поиска).

Еще одна важная особенность быстрого поиска в 1С Бухгалтерии 8.3 — совпадение ищется не по началу строки, как в версии 8.2, а производится поиск на совпадение с любой частью строк в колонке. Таким образом, если контрагента назвать "ООО ИмяФирмы", а при поиске начать вводить "ИмяФирмы ООО", то строка все равно найдется!

Делаем выводы

Таким образом, быстрый поиск в 1С Бухгалтерии 8.2 и более ранних версиях предназначается для прокрутки списка к нужной строке, а в 1С Бухгалтерии 8.3 быстрый поиск работает как обычный фильтр, скрывая ненужную вам часть списка.

Главная Заметки из Зазеркалья

07.02.2013 Поиск по строке

Реализовано в версии 8.3.3.641.

Мы серьёзно улучшили ввод по строке. Для этого нам пришлось реализовать новый мощный механизм поиска в поле ввода. Теперь он может быстро работать по миллионам записей, содержащихся в базе данных.

Мы проанализировали задачи поиска, возникающие у пользователей. Провели "ревизию" имеющихся в платформе механизмов, которые используют различные алгоритмы поиска. В результате ввод по строке приобрёл качественно новые возможности.

Теперь пользователи могут искать в любом месте названия, а не только по началу строки. Они могут использовать при этом полнотекстовый поиск и даже выполнять поиск с помощью фонового задания. Для того чтобы полнотекстовый поиск эффективно работал при вводе по строке, мы дополнительно оптимизировали этот механизм поиска и повысили его производительность.

Все новые свойства, позволяющие настраивать ввод по строке, мы собрали на отдельной закладке окна редактирования объекта конфигурации:

Например, вы можете указать, что поиск будет выполняться в любом месте строки, а не только в её начале:

Тогда пользователь может набирать любые фрагменты слов, а не только те символы, с которых начинается искомая строка:

Использование полнотекстового поиска при вводе по строке включается отдельным свойством:

С помощью полнотекстового поиска пользователи могут среди больших объёмов данных быстро находить подходящие данные по любому из слов, содержащихся, например, в наименовании:

Также они могут искать и по нескольким известным словам. Незаконченные слова будут автоматически дополняться возможными сочетаниями:

Если объём данных велик, то в обоих случаях вы можете указать, что поиск должен выполняться с помощью фонового задания:

Тогда рядом с полем ввода для пользователей будет отображаться анимированная картинка, похожая на картинку, которая отображается при фоновом выполнении отчета:

  • если в объекте, который используется в поле ввода, не ожидается большого количества данных, то мы советуем включить поиск строки в любом месте;
  • если в объекте планируется большое количество данных, то:
    • мы советуем включить полнотекстовый и фоновый поиск;
    • при этом вы также можете использовать поиск строки в любом месте, но совместно с фоновым поиском и желательно с полнотекстовым поиском; чтобы большая часть поисков выполнялась через полнотекстовый поиск.

Все перечисленные свойства вы можете, при необходимости, переопределить в процессе выполнения прикладного решения.

На клиенте - в клиентских обработчиках событий поля ввода АвтоПодбор и ОкончаниеВводаТекста :

На сервере - в модуле менеджера того объекта, в данных которого выполняется поиск. В обработчике события ОбработкаПолученияДанныхВыбора :

Естественно, в этом месте, на сервере, нельзя переопределить способ выполнения поиска "Непосредственно" или "Фоновым заданием" . Потому что исполнение кода уже передано на сервер.

Всем привет
Сегодня попросили меня при печати документа реализации не выводить префикс документа, задачу решил следующим образом.

СтрЗаменить(Номер, Лев (Номер, 3 ), "" );

Когда заглянул в синтакс-помощник так мне это понравилось, что захотелось написать о работе с строками в «1С:Предприятие» .

Строка в 1С относится к примитивному типу данных.

Если посмотреть в справку 1С увидим следующее описание типа Строка (String)
Значения данного типа содержат строку в формате Unicode произвольной длины.
Если своими словами о строках то получится. Строка — константа, состоящая из различных символов, обрамляется всегда кавычками.

Задание строки
Обращение = «Привет пассажир»;

Многострочные строки в типовых конфигурациях чаще всего создаются с помощью вертикального разделителя «|»:
Строка = «Многострочная
|строка
|пиши
|текст»;

Кавычка внутри строки задаются двойными кавычками.
Строка = «»Текст в кавычках»»;

Над строками существует множество операций (поиск в нутрии строки, определение первых и т.д.), лучше посмотреть Синтакс-помощник.
Синтакс-помощник — Общее описание встроенного языка-> встроенные функции-> функции по работе со строками.

Функций по работе со строками

Здесь в краткой форме приведу функций по работе со строками:

ВРег(<Строка>) — Все символы строки функция преобразует в верхний регистр.

КодСимвола(<Строка>, <НомерСимвола>) – Функция получает код символа, расположенного в переданной строке в позиции с указанным номером.

Лев(<Строка>, <ЧислоСимволов>) – Функция выбирает первые слева символы строки.

Найти(<Строка>, <ПодстрокаПоиска>) — Функция находит вхождение искомой строки как подстроки в исходной строке.

НРег(<Строка>) — Функция преобразует все символы строки в нижний регистр.

Прав(<Строка>, <ЧислоСимволов>) – Данная функция отличается от функций Лев (Left) тем что выбирает последние справа символы строки.

ПустаяСтрока(<Строка>) — Функция проверяет строку на наличие значащих символов.

Символ(<КодСимвола>) — Функция преобразует код символа в строку, содержащую символ.

СокрЛ(<Строка>) — Функция отсекает незначащие символы, стоящие слева от первого значащего символа в строке.

СокрЛП(<Строка>) — Функция отсекает незначащие символы, стоящие слева от первого значащего символа в строке, и пробелы, стоящие справа от последнего значащего символа в строке.

СокрП(<Строка>) — Функция отсекает незначащие символы, стоящие справа от последнего значащего символа в строке.

Сред(<Строка>, <НачальныйНомер>, <ЧислоСимволов>) — Функция выбирает строку символов, начиная с символа <НачальныйНомер>, общим количеством <ЧислоСимволов>.

СтрДлина(<Строка>) — Функция получает количество символов в строке.

СтрЗаменить(<Строка>, <ПодстрокаПоиска>, <ПодстрокаЗамены>) — Функция находит в исходной строке все вхождения подстроки поиска и заменяет ее на подстроку замены.

СтрПолучитьСтроку(<Строка>, <НомерСтроки>) — Функция получает строку многострочной строки по номеру.

СтрЧислоВхождений(<Строка>, <ПодстрокаПоиска>) — Функция вычисляет число вхождений подстроки поиска в исходной строке.

СтрЧислоСтрок(<Строка>) — Функция считает число строк в многострочной строке. В многострочной строке, строки разделены символами перевода строк.

ТРег(<Строка>) — Функция преобразует строку к титульному регистру. Это означает, что у каждого слова первый символ преобразуется к титульному регистру или к верхнему регистру, если титульный регистр для символа не определен. Остальные символы преобразуются к нижнему регистру.

Преобразования типов
Для явного преобразования типов данных существуют функции одноименные с типом данных, к которому происходит преобразование: Строка(<Значение>)

СтрокаИзЧисел= Строка(Число);

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

Примеры по работе с строками

Преобразование числа в строку и обратно.

Для получения строкового представления года следует использовать функцию Формат.

Год = Формат(ТекущаяДата(), "ДФ=yyyy" ) // Год = "2012"

Чтобы преобразовать число к строке без вставки символа-разделителя групп (неразрывного пробела), необходимо применить функцию Формат с параметром ЧГ=0:

Число = 2012 Строка = Формат(Число, "ЧГ=0" ); //Строка = "2012"

Строка Без пробелов.

Механизмов для работы со строками в запросах 1С мало. Во-первых, строки можно складывать. Во-вторых, от строки можно взять подстроку. В-третьих, строки можно сравнивать, в том числе по шаблону. Вот пожалуй и всё, что можно делать со строками.

Сложение строк

Для сложения строк в запросе используется операция «+». Складывать можно только строки ограниченной длины.

ВЫБРАТЬ "Наименование: " + Контрагенты.Наименование КАК Колонка1 ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.Ссылка = &Ссылка

Функция Подстрока

ПОДСТРОКА(<Строка>, <НачальнаяПозиция>, <Длина>)

Аналог функции Сред() из объектной модели. Функция Подстрока() может применяться к данным строкового типа и позволяет выделить фрагмент <Строки> , начинающийся с символа номер <НачальнаяПозиция> (символы в строке нумеруются с 1) и длиной <Длина> символов. Результат вычисления функции имеет строковый тип переменной длины, причем длина будет считаться неограниченной, если <Строка> имеет неограниченную длину и параметр <Длина> не является константой или превышает 1024.

Если длина строки меньше, чем указана во втором параметре, то функция вернет пустую строку.

Внимание! Использование функции ПОДСТРОКА() с целью приведения строк неограниченной длины к строкам ограниченной длины не рекомендуется. Вместо нее лучше использовать операцию приведения типа ВЫРАЗИТЬ().

Функция Подобно

Если нужно убедиться, что строковый реквизит соответствует определённым критериям мы его сравниваем:

ВЫБРАТЬ Контрагенты.Наименование КАК Колонка1 ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.Наименование = "Газпром"

А что, если нужно более хитрое сравнение? Не просто на равенство или неравенство, а на подобие определенному шаблону? Вот как раз для этого и создана функция ПОДОБНО.

ПОДОБНО — Оператор проверки строки на подобие шаблону. Аналог LIKE в SQL.

Оператор ПОДОБНО позволяет сравнить значение выражения, указанного слева от него, со строкой шаблона, указанной справа. Значение выражения должно иметь тип строка. Если значение выражения удовлетворяет шаблону – результатом оператора будет ИСТИНА, иначе – ЛОЖЬ.

Следующие символы в строке шаблона являются служебными и имеют смысл, отличный от символа строки:

  • % (процент): последовательность, содержащая любое количество произвольных символов;
  • _ (подчеркивание): один произвольный символ;
  • […] (в квадратных скобках один или несколько символов): любой одиночный символ из перечисленных внутри квадратных скобок. В перечислении могут встречаться диапазоны, например a-z, означающие произвольный символ, входящий в диапазон, включая концы диапазона;
  • [^…] (в квадратных скобках значок отрицания, за которым следует один или несколько символов): любой одиночный символ, кроме тех, которые перечислены следом за значком отрицания.

Любой другой символ означает сам себя и не несет никакой дополнительной нагрузки. Если в качестве самого себя необходимо записать один из перечисленных символов, то ему должен предшествовать <Спецсимвол>. Сам <Спецсимвол> (любой подходящий символ) определяется в этом же операторе после ключевого слова СПЕЦСИМВОЛ.