System.Insert

De Appmethod Libraries
Aller à : navigation, rechercher

Object Pascal

procedure Insert(Source: <string or dynamic array>; var Dest: <string or dynamic array>; Index: Integer);

Propriétés

Type Visibilité  Source Unité  Parent
procedure public System.pas System System


Description

Insère une sous-chaîne dans une chaîne (ou insère un tableau dynamique dans un tableau dynamique), en commençant à la position spécifiée.

Dans du code Object Pascal, Insert fusionne Source dans Dest à la position Dest[Index].

Paramètres

Nom Description
Source La chaîne ou les éléments de tableau à insérer dans Dest. Si Source est vide, Dest n'est pas modifié.
Dest La chaîne ou le tableau de destination, qui est modifié si l'opération réussit.
Index La position d'insertion :
  • Pour une chaîne, si Index est inférieur à 1, la position d'insertion est définie sur 1. S'il dépasse la fin de Dest, la position d'insertion est définie sur la longueur de Dest, en transformant l'opération en un ajout en fin de fichier.
  • Pour un tableau, System.Insert insère un tableau dynamique à l'index de position, et renvoie le tableau modifié.

Remarque : Index est un index caractère (et non un index octet). Par contre, il doit être incrémenté de 2 pour passer sur une paire de substitution (voir la spécification Unicode). Lors de l'itération ou du comptage des caractères d'une chaîne Unicode, une paire de substitution est considérée comme deux caractères.

Insert déclenche une exception EOutOfMemory si elle ne peut pas allouer suffisamment de mémoire pour accepter la nouvelle chaîne ou le nouveau tableau renvoyé.

Exemple de tableau dynamique

  
var
  A: array of integer;
begin
  ...
  A:=[1,2,3,4];
  Insert(5,A,2); // A will become [1,2,5,3,4]
  ...
end;

Voir aussi

Exemples de code