Automation Engine Script-Leitfaden > Funktionelle Gliederung > Script-Aufbau und -Prozessierung > FIND

FIND

Script-Funktion: Durchsucht ein Script-Array und liefert den entsprechenden Index zurück.

Syntax

FIND(script array, search key, [start position])

Syntax

Beschreibung/Format

Script-Array

Name des zu durchsuchenden Script-Arrays.
Format: Script-Variable

Suchbegriff Zeichenkette oder Zahl nach der gesucht werden soll.
Format: String-Literal, Zahl ohne Hochkommata, Script-Variable
Startposition Index, ab dem die Suche gestartet werden soll.
Format: Zahl ohne Hochkommata, Script-Variable

Rückgabewerte

Index des Arrays, in dem der Suchbegriff gefunden wurde.
0 = Kein Suchergebnis

Anmerkungen

Die Suche nach Suchbegriff wird für alle Werte von Script-Array ab dem Index Startposition durchgeführt. Wird keine Startposition angegeben, wird das ganze Array durchsucht (ab Index 1). War die Suche erfolgreich, wird der Array-Index zurückgeliefert, in dem der Text bzw. die Zahl als erstes gefunden wurde. Um die Suche im restlichen Teil des Array fortzusetzen, ist als Startposition der nächste Index des vorigen Ergebnisses zu verwenden. Liefert die Suche keinen Treffer, so erhält man 0 als Rückgabewert der Script-Funktion.

Das Script-Array ist mit leeren Indexklammern [] anzugeben.

Script-Arrays müssen mit :DEFINE erstellt werden, wobei auch Datentyp und Größe festgelegt werden. Felder des Arrays, denen noch kein bestimmter Wert zugewiesen wurde, besitzen den Standardwert "" (Datentyp: string) oder 0 (numerische Datentypen). Die Suche mit FIND ist daher nur sinnvoll, wenn das Array auch entsprechend befüllt wurde. Die Array-Elemente können einzeln mit Angabe des Index mit :SET gesetzt werden. Um mehrere verschiedene Werte gleichzeitig in ein Array abzuspeichern, steht die Script-Anweisung :FILL zur Verfügung.

Beispiele

Das Beispiel zeigt die Erstellung und Initalisierung eines Arrays mit Werten aus einem Variablen-Objekt. Anschließend wird das gesamte Array nach WIN durchsucht und alle Ergebnisse in das Aktivierungsprotokoll geschrieben.

:DEFINE &array#, string, 5
:FILL &array#[] = GET_VAR(VARA.WIN, AGENTS)
:SET &search# = FIND(&array#[], "WIN", 1)
:WHILE &search# <> 0
:PRINT "WIN found at position &search#"
:SET &search# = &search# + 1

:SET &search# = FIND(&array#[], "WIN", &search#)
:ENDWHILE

 

Siehe auch:

Script-Sprachmittel Beschreibung

:FILL

Speichert mehrere Werte in ein Script-Array.

LENGTH Ermittelt die Größe eines Script-Arrays.

 


Automic Documentation - Tutorials - Automic Blog - Resources - Training & Services - Automic YouTube Channel - Download Center - Support

Copyright © 2016 Automic Software GmbH