Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?

Официальный форум Simple-Scada.

Автор Тема: Использование функции вставка в строке  (Прочитано 1717 раз)

andrei_it

  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
Здравствуйте,

при использовании функции Insert в скрипте (см. скрншот)
вываливается too many actual parameters
Target - String

Insert(Target_2, Target_1, 2);
Insert(Target_4, Target_3, 2);

пытался использовать Concat и StuffSrting, функции не определились.

Вообще задача разбить предложение на буквы (это получилось), а затем  собрать функцией insert в слоги,  поменяв буквы местами.

Порекомендуйте , как выйти из ситуации
« Изменён: 26 Марта 2020, 15:24:12 от Simple-Scada »

Simple-Scada

  • Администратор
  • *****
  • Сообщений: 3214
    • Просмотр профиля
    • Simple-Scada
Re: Использование функции вставка в строке
« Ответ #1 : 26 Марта 2020, 15:21:19 »
Здравствуйте.

Не нужно извлекать символы из строки отдельной операцией копирования, к ним можно обращаться напрямую:
Код: (delphi)
var
  aSource: string;
  aRes1, aRes2: string;
begin
  aSource := Source.AsStr; // берём значение из переменной Source и помещаем его в aSource
  aRes1 := aSource[2] + aSource[1];
  aRes2 := aSource[4] + aSource[3];
  // и т.д.
end.

Цитировать
при использовании функции Insert в скрипте (см. скрншот). вываливается too many actual parameters
Что-то Вы сделали не так. Вот пример кода, который компилируется и работает.
Код: (delphi)
var
  Str1, Str2: string;
begin
  Str1 := 'абвг';
  Str2 := '+';
  Insert(Str2, Str1, 2);
end.
« Изменён: 26 Марта 2020, 15:23:51 от Simple-Scada »