System.Insert

Aus Appmethod Libraries
Wechseln zu: Navigation, Suche

Object Pascal

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

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
procedure public System.pas System System


Beschreibung

Fügt einen Teilstring in einen String (oder ein dynamisches Array in ein dynamisches Array) ab der angegebenen Position ein.

In Object Pascal-Code fügt Insert Source an der Position Dest[Index] in Dest ein.

Parameter

Name Beschreibung
Source Die String- oder Array-Elemente, die in Dest eingefügt werden sollen. Wenn Source leer ist, wird Dest nicht verändert.
Dest Der Ziel-String oder das Ziel-Array, der bzw. das bei Erfolg der Operation geändert wird.
Index Die Einfügeposition:
  • Bei einem String: Wenn Index kleiner als 1 ist, wird er auf 1 gesetzt. Wenn der Wert das Ende von Dest überschreitet, wird er auf die Länge von Dest gesetzt und eine Append-Operation durchgeführt.
  • Bei einem Array: System.Insert fügt ein dynamisches Array am Beginn am Positionsindex ein und gibt das geänderte Array zurück.

Hinweis: Index ist ein Zeichen-Index (kein Byte-Index). Aber der Index muss um 2 inkrementiert werden, damit auch ein Surrogatpaar übergeben werden kann (siehe die Unicode-Spezifikation). Beim Durchlaufen oder Zählen der Zeichen in einem Unicode-String werden für ein Surrogatpaar zwei Zeichen angenommen.

Insert löst eine EOutOfMemory-Exception aus, wenn nicht genügend Speicherplatz für den zurückgegebenen String oder das zurückgegebene Array zugewiesen werden kann.

Beispiel für ein dynamisches Array

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

Siehe auch

Codebeispiele