1С СтрЗаменить – замена строки или символа

Также на эту тему:
Строки и символы в 1С
Функции работы со строками 1С - анализ текста
1С СтрДлина – длина строки
1С СокрЛП, СокрЛ, СокрП – удаление лишних символов
1С Сред, Лев, Прав - подстрока

Дополнительные материалы:
Электронная книга "Язык 1С. Том 2"

Функция 1С СтрЗаменить(ГдеЗаменять, ЧтоЗаменять, НаЧто) заменяет все вхождения ЧтоЗаменять в строке ГдеЗаменять.


Например:

  • Выполняем 1С СтрЗаменить(«Здесь; одни; точки;», «;», «.»)
  • 1С возвращает » Здесь. одни. точки.»
  • Выполняем 1С СтрЗаменить(«Ежик любит посмеяться, Ежик любит попрыгать, Ежиковидный смех», «Ежик», «Кролик»)
  • 1С возвращает «Кролик любит посмеяться, Кролик любит попрыгать, Кроликовидный смех»
  • Выполняем 1С СтрЗаменить(«Опера оправа курага», «ра», «да»)
  • 1С возвращает «Опеда опдава кудага»

На примере нашего анализатора текста сделаем с помощью 1С СтрЗаменить – создание сообщения пользователю на основе шаблона с переменными.

Допустим:

  • Текст, который мы считали из файла – шаблон сообщения пользователю
  • В тексте шаблона могут быть указаны переменные с помощью # перед началом слова, например #Документ.Организация.
    После # первым словом до точки идет указание – откуда брать переменную – из документа, константы, результат функции.
    Мы должны считать переменную из текста, определить ее значение, заменить имя переменной на значение.
  • В качестве параметра функции нам передается ссылка на документ, на основе которого мы выводим пользователю сообщение.



Только зарегистрированные пользователи VIP группы могут видеть этот контент.


Пример использования созданных нами функций:
//Функция для вызова из шаблона из переменной #Функция.ФиоПодписанта
Функция ФиоПодписанта()
     
     Возврат "Васюкин С.М.";
     
КонецФункции

//Выберем один ПОСЛЕДНИЙ документ из списка
//"ПЕРВЫЕ 1" в сумме "УПОРЯДОЧИТЬ ПО Дата УБЫВ" дают один последний документ
Запрос = Новый Запрос("ВЫБРАТЬ ПЕРВЫЕ 1 Ссылка ИЗ Документ.Конференция УПОРЯДОЧИТЬ ПО Дата УБЫВ");
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
ДокументСсылка = Выборка.Ссылка;

//Вот такое значение мы устанавливаем в константу
Константы.ТекстПриветствия.Установить("Доброго дня, вечера, ночи!");

//Это наш шаблон
Шаблон = "#Константа.ТекстПриветствия
| Рады видеть Вас на нашей конференции от организации '#Документ.Организация'
|           Старший менеджер, #Функция.ФиоПодписанта";

АнализТекста(Шаблон, ДокументСсылка);

Сообщения от 1С в результате выполнения этого кода:
Было: #Константа.ТекстПриветствия
Рады видеть Вас на нашей конференции от организации '#Документ.Организация'
           Старший менеджер, #Функция.ФиоПодписанта

Стало: Доброго дня, вечера, ночи!
Рады видеть Вас на нашей конференции от организации 'ООО "Белые ночи"'
           Старший менеджер, Васюкин С.М.


Проголосовать за этот пост:

1 Star2 Stars3 Stars4 Stars5 Stars (Проголосуйте первым за этот пост)
Loading ... Loading ...

Также на эту тему:
Строки и символы в 1С
Функции работы со строками 1С - анализ текста
1С СтрДлина – длина строки
1С СокрЛП, СокрЛ, СокрП – удаление лишних символов
1С Сред, Лев, Прав - подстрока
1С Найти – поиск подстроки или символа
1С ВРег, НРег, ТРег – изменение "регистра" символов
1С ПустаяСтрока – проверка строки на заполненность
1С СтрЧислоВхождений – количество вхождений подстроки
1С СтрЧислоСтрок – количество строк в многострочном тексте

Дополнительные материалы:
Электронная книга "Язык 1С. Том 2"

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