Integrierte Funktionen werden von Ausdrücken in StyleBooks verwendet.
Sie können beispielsweise die integrierte Funktion str() verwenden, um eine Zahl in eine Zeichenfolge umzuwandeln.
str($parameters.order)
Oder Sie können die integrierte Funktion int() verwenden, um eine Zeichenfolge in eine Ganzzahl umzuwandeln.
int($parameters.priority)
Nachfolgend finden Sie eine Liste der in StyleBook-Ausdrücken unterstützten integrierten Funktionen mit Beispielen für ihre Verwendung:
Die Funktion str() wandelt das Eingabeargument in einen Zeichenfolgenwert um.
Zulässige Argumenttypen:
SchnurNummerTCP-PortBoolescher WertIP-AdresseBeispiele:
"set-" + str(10) gibt "set-10"zurück.str(10) gibt 10zurück.str(1.1.1.1) gibt 1.1.1.1zurück.str(T rue) gibt "T rue"zurück.str(ADM) gibt "mas"zurück.Die Funktion int() verwendet eine Zeichenfolge, Zahl, IP-Adresse oder tcpport als Argument und gibt eine Ganzzahl zurück.
Beispiele:
int("10") gibt 10zurück.int(10) gibt 10zurück.int(ip('0.0.4.1')) gibt 1025zurück.Die Funktion bool() akzeptiert jeden beliebigen Typ als Argument. Wenn der Argumentwert false, leer oder nicht vorhanden ist, gibt diese Funktion falsezurück.
Andernfalls wird truezurückgegeben.
Beispiele:
bool(true) gibt truezurück.bool(false) gibt falsezurück.bool($parameters.a) gibt false zurück, wenn $parameters.a false, leer oder nicht vorhanden ist.Die Funktion len() verwendet eine Zeichenfolge oder eine Liste als Argument und gibt die Anzahl der Zeichen in einer Zeichenfolge oder die Anzahl der Elemente in einer Liste zurück.
Beispiel 1:
Wenn Sie eine Substitution wie folgt definieren:
Elemente: ["123", "abc", "xyz"]
Die Funktion len($substitutions.items) gibt 3zurück
Beispiel 2:
Die Funktion len("NetScaler Console") gibt 10zurück.
Beispiel 3:
Wenn $parameters.vips die Werte ['1.1.1.1', '1.1.1.2', '1.1.1.3']hat, gibt die Funktion len($parameters.vips) 3zurück.
Die Funktion min() verwendet entweder eine Liste oder eine Reihe von Zahlen oder TCP-Ports als Argumente und gibt das kleinste Element zurück.
Beispiele mit einer Reihe von Zahlen/TCP-Ports:
min(80, 100, 1000) gibt 80zurück.min(-20, 100, 400) gibt -20zurück.min(-80, -20, -10) gibt -80zurück.min(0, 100, -400) gibt -400zurück.Beispiele mit einer Liste von Nummern/TCP-Ports:
Support $parameters.ports ist eine Liste von TCP-Ports und hat die Werte: [80, 81, 8080].
Die Funktion min($parameters.ports) gibt 80zurück.
Die Funktion max() verwendet entweder eine Liste oder eine Reihe von Zahlen oder TCP-Ports als Argumente und gibt das größte Element zurück.
Beispiele mit einer Reihe von Zahlen/TCP-Ports:
max(80, 100, 1000) gibt 1000zurück.max(-20, 100, 400) gibt 400zurück.max(-80, -20, -10) gibt -10zurück.max(0, 100, -400) gibt 100zurück.Beispiele mit einer Liste von Nummern/TCP-Ports:
Unterstützt $parameters.ports ist eine Liste von TCP-Ports und hat die Werte: [80, 81, 8080].
Die Funktion max($parameters.ports) gibt 8080zurück.
Die Funktion bin() verwendet eine Zahl als Argument und gibt eine Zeichenfolge zurück, die die Zahl im Binärformat darstellt.
Beispiele für Ausdrücke:
Die Funktion bin(100) gibt 0b1100100zurück.
Die Funktion oct() verwendet eine Zahl als Argument und gibt eine Zeichenfolge zurück, die die Zahl im Oktalformat darstellt.
Beispiele für Ausdrücke:
Die Funktion oct(100) gibt 0144zurück.
Die Funktion hex() verwendet eine Zahl als Argument und gibt eine Zeichenfolge in Kleinbuchstaben zurück, die die Zahl im Hexadezimalformat darstellt.
Beispiele für Ausdrücke:
Die Funktion hex(100) gibt 0x64zurück.
Die Funktion lower() verwendet eine Zeichenfolge als Argument und gibt dieselbe Zeichenfolge in Kleinbuchstaben zurück.
Beispiel:
Die Funktion lower("ADM") gibt admzurück.
Die Funktion upper() verwendet eine Zeichenfolge als Argument und gibt dieselbe Zeichenfolge in Großbuchstaben zurück.
Beispiel:
Die Funktion upper("NetScaler Console") gibt NetScaler Consolezurück.
Die Funktion sum() verwendet eine Liste von Zahlen oder tcpports als Argumente und gibt die Summe der Zahlen in der Liste zurück.
Beispiel 1:
Wenn Sie eine Substitution wie folgt definieren: Substitutionen:
Zahlenliste = [11, 22, 55]
Die Funktion sum($substitutions.list-of-numbers) gibt 88zurück.
Beispiel 2:
Wenn $parameters.ports [80, 81, 82]ist, gibt die Funktion sum($parameters.ports) 243zurück.
Die Funktion pow() verwendet zwei Zahlen als Argumente und gibt eine Zahl zurück, die das erste Argument hoch dem zweiten darstellt.
Beispiel:
Die Funktion pow(3,2) gibt 9zurück.
Die Funktion ip() verwendet eine Ganzzahl, Zeichenfolge oder eine IP-Adresse als Argument und gibt die IP-Adresse basierend auf dem Eingabewert zurück.
Beispiele:
Geben Sie in der Funktion ip eine IP-Adresse an:
Die Funktion ip(3.1.1.1) gibt 3.1.1.1zurück.
Geben Sie in der Funktion ip eine Zeichenfolge an:
Die Funktion ip('2.1.1.1') gibt 2.1.1.1zurück
Geben Sie in der Funktion ip eine Ganzzahl an:
Die Funktion ip(12) gibt 0.0.0.12zurück.
Wenn Sie in der Funktion ip eine Ganzzahl als Zeichenfolge angeben, wird eine entsprechende IP-Adresse der Eingabe zurückgegeben.
Die Funktion ip('1025') gibt 0.0.4.1zurück.
Diese Funktion unterstützt auch die Additions- und Subtraktionsoperationen ganzer Zahlen und gibt eine resultierende IP-Adresse zurück.
Ergänzung: Die Funktion ip(1025) + ip(12) gibt 0.0.4.13zurück.
Subtraktion: Die Funktion ip('1025') - ip(12) gibt 0.0.3.245zurück.
Kombinieren Sie Addition und Subtraktion: ip('1.1.1.1') + ip('1.1.1.1') – ip(2)  gibt 2.2.2.0zurück.
Die Funktion base64.encode() nimmt ein String-Argument und gibt den Base64-codierten String zurück.
Beispiel:
Die Funktion base64.encode("abcd") gibt YWJjZA==zurück.
Die Funktion base64.decode verwendet eine base64-codierte Zeichenfolge als Argument und gibt die decodierte Zeichenfolge zurück.
Beispiel:
Die Funktion base64.decode("YWJjZA==") gibt abcdzurück.
Die Funktion exists() nimmt ein Argument beliebigen Typs und gibt einen Booleschen Wert zurück. Der Rückgabewert ist True , wenn die Eingabe einen beliebigen Wert hat. Der Rückgabewert ist False , wenn das Eingabeargument keinen Wert hat (d. h. keinen Wert).
Bedenken Sie, dass $parameters.monitor ein optionaler Parameter ist. Wenn Sie beim Erstellen eines Konfigurationspakets einen Wert für diesen Parameter angeben, gibt die Funktion ($parameters.monitor) Truezurück.
Andernfalls wird Falsezurückgegeben.
Die Funktion filter() nimmt zwei Argumente an.
Argument 1: Eine Substitutionsfunktion, die ein Argument annimmt und einen Booleschen Wert zurückgibt.
Argument 2: eine Liste.
Die Funktion gibt eine Teilmenge der ursprünglichen Liste zurück, wobei jedes Element als True ausgewertet wird, wenn es im ersten -Argument an die Substitutionsfunktion übergeben wird.
Beispiel:
Betrachten Sie eine Substitutionsfunktion wie folgt:
Auswechslungen:
x(a): $a != 81
Diese Funktion gibt True zurück, wenn der Eingabewert ungleich 81ist. Andernfalls wird Falsezurückgegeben.
Angenommen,$parameters.ports ist [81, 80, 81, 89].
Der Filter ($substitutions.x, $parameters.ports) gibt [80, 89] zurück, indem er alle Vorkommen von 81 aus der Liste entfernt.
Die Funktion if-then-else() nimmt drei Argumente an.
Argument 1: Boolescher Ausdruck
Argument 2: Jeder Ausdruck
Argument 3: Beliebiger Ausdruck (optional)
Wenn der Ausdruck in Argument 1 als Trueausgewertet wird, gibt die Funktion den Wert des als Argument 2 angegebenen Ausdrucks zurück.
Andernfalls gibt die Funktion, wenn Argument 3 angegeben ist, den Wert des Ausdrucks in Argument 3 zurück.
Wenn Argument 3 nicht angegeben ist, gibt die Funktion oderzurück.
Beispiel 1:
Die Funktion if-then-else($parameters.servicetype == HTTP, 80, 443) gibt 80 zurück, wenn $parameters.servicetype den Wert HTTPhat. Andernfalls gibt die Funktion 443zurück.
Beispiel 2:
Die Funktion if-then-else($parameters.servicetype == HTTP, $parameters.hport, $parameters.sport) gibt den Wert von $parameters.hport zurück, wenn $parameters.servicetype den Wert HTTPhat.
Andernfalls gibt die Funktion den Wert $parameters.sportzurück.
Beispiel 3:
Das if-then-else($parameters.servicetype == HTTP, 80) gibt 80 zurück, wenn $parameters.servicetype den Wert HTTPhat.
Andernfalls gibt die Funktion keinen Wert zurück.
Die Funktion join() verwendet zwei Argumente:
Argument 1: Liste von Zahlen, TCP-Ports, Zeichenfolgen oder IP-Adressen
Argument 2: Trennzeichenfolge (optional)
Diese Funktion fügt die Elemente der als Argument 1 angegebenen Liste zu einer Zeichenfolge zusammen, wobei jedes Element durch die als Argument 2 angegebene Trennzeichenfolge getrennt ist. Wenn Argument 2 nicht angegeben wird, werden die Elemente in der Liste zu einer Zeichenfolge zusammengefügt.
Beispiel:
$parameters.ports ist [81, 82, 83].
Mit Trennzeichenargument:
Die Funktion join($parameters.ports, '-') gibt 81-82-83zurück.
Ohne Trennzeichenargument:
Die Funktion join($parameters.ports) gibt 818283zurück.
Die Funktion split() teilt eine Eingabezeichenfolge abhängig von den angegebenen Trennzeichen in mehrere Listen auf. Wenn kein oder ein leeres Trennzeichen ('') angegeben ist, betrachtet diese Funktion Leerzeichen als Trennzeichen und teilt die Zeichenfolge in Listen auf.
Beispiele:
Die Funktion split('Example_string_split', 's') gibt ['Example_','tring_','plit']zurück.
Die Funktion split('Beispiel-String-Split') gibt ['Beispiel','String','Split']zurück.
Die Funktion split('Beispiel-String-Split', '') gibt ['Beispiel','String','Split']zurück.
Die Funktion split('Beispielstring') gibt ['Beispiel','string']zurück.
Diese Funktion betrachtet zusammenhängende Räume als einen Raum.
Die Funktion map() nimmt zwei Argumente an;
Argument 1: Jede Funktion
Argument 2: Eine Liste von Elementen.
Die Funktion gibt eine Liste zurück, in der jedes Element der Liste das Ergebnis der Anwendung der Funktion map() (Argument 1) auf das entsprechende Element in Argument 2 ist.
Erlaubte Funktionen im Argument 1:
Integrierte Funktionen, die ein Argument annehmen:
base64.encode, base64.decode, bin, bool, existiert, hex, int, ip, len, lower, upper, oct, quotewrap, str, trim, upper, url.encode, url.decode
Substitutionsfunktionen, die mindestens ein Argument annehmen.
Beispiel:
Angenommen, $parameters.nums ist [81, 82, 83].
Map mit einer integrierten Funktion, str
Die Funktion map(str, $parameters.nums) gibt ["81", "82", "83"]zurück
Das Ergebnis der Map-Funktion ist die Liste von Zeichenfolgen, wobei jedes Element eine Zeichenfolge ist, die durch Anwenden der str-Funktion auf das entsprechende Element in der Eingabeliste ($parameters.nums) berechnet wird.
Karte mithilfe einer Substitutionsfunktion
Auswechslungen:
add-10(Port): $port + 10
Ausdruck:
Die Funktion map($substitutions.add-10, $parameters.nums) gibt eine Liste von Zahlen zurück: [ 91, 92, 93 ]
Das Ergebnis dieser Map-Funktion ist eine Liste von Zahlen. Jedes Element wird berechnet, indem die Substitutionsfunktion $substitutions.add-10 auf das entsprechende Element in der Eingabeliste ($parameters.nums)angewendet wird.
Die Funktion quotewrap() verwendet eine Zeichenfolge als Argument und gibt eine Zeichenfolge zurück, nachdem vor und nach dem Eingabewert ein doppeltes Anführungszeichen hinzugefügt wurde.
Beispiel:
Die Funktion quotewrap("ADM") gibt "mas"zurück
Die Funktion replace() verwendet drei Argumente:
Argument 1: eine -Zeichenfolge oder eine Liste der folgenden integrierten Typen:
SchnurNummerIP-AdresseTCP-PortBoolescher WertArgument 2: ein einzelner Wert oder eine Liste von Werten, deren Typ mit dem in Argument 1 angegebenen Typ übereinstimmt
Argument 3: ein einzelner Wert desselben Typs wie in Argument 1 angegeben (optional)
Die Funktion replace() ersetzt alle Vorkommen von Argument 2 durch Argument 3 in Argument 1.
Wenn Argument 3 nicht angegeben wird, werden alle Vorkommen von Argument 2 aus Argument 1 entfernt.
Beispiel:
replace('abcdef', 'def', 'xyz') Funktion gibt abcxyzzurück.
Alle Vorkommen von def werden durch xyzersetzt.
replace('abcdefabc', 'def') gibt abcabczurück.
Da es kein Argument 3 gibt, wird def aus der resultierenden Zeichenfolge entfernt.
replace('Ein#Beispiel@zum%Ersetzen!von!Zeichen', ['@', '#', '!', '%'], '_') Funktion gibt Ein_Beispiel_zum_Ersetzen_von_Zeichenzurück.
Die Ausgabezeichenfolge enthält einen Unterstrich (_) anstelle der in ['@', '#', '!', '%']angegebenen Zeichen.
replace([10.10.10.1, 10.10.10.2, 10.10.10.3, 10.10.10.4], [10.10.10.2, 10.10.10.4]) Funktion gibt [10.10.10.1, 10.10.10.3]zurück.
Da das Argument 3 fehlt, werden 10.10.10.2 und 10.10.10.4 aus der resultierenden Liste der IP-Adressen entfernt.
replace([8080, 8081, 8082, 8083, 8084], 8083, 80) Funktion gibt [8080, 8081, 8082, 80, 8084]zurück.
Alle Vorkommen von 8083 werden durch 80ersetzt.
Die Funktion trim() gibt eine Zeichenfolge zurück, bei der die führenden und nachfolgenden Leerzeichen aus der Eingabezeichenfolge entfernt wurden.
Beispiel:
Die Funktion trim(' abc ') gibt abczurück.
Die Funktion truncate() verwendet zwei Argumente:
Argument 1: Zeichenfolge
Argument 2: Zahl
Die Funktion gibt eine Zeichenfolge zurück, bei der die Eingabezeichenfolge in Argument 1 auf die durch Argument 2 angegebene Länge gekürzt wird.
Beispiel:
Das truncate('NetScaler Console', 6) gibt Citrixzurück.
Die Funktion distinct() extrahiert eindeutige Elemente aus einer Listeneingabe.
Beispiele: Wenn $parameters.input_list ['ADM', 'ADC', 'VPX', 'ADC', 'ADM', 'CPX']ist, gibt die Funktion distinct($parameters.input_list) ['ADM', 'ADC', 'VPX', 'CPX']zurück.
Die Funktion url.encode() gibt eine Zeichenfolge zurück, in der die Zeichen mithilfe des ASCII-Zeichensatzes gemäß RFC 3986 transformiert werden.
Beispiel:
Die Funktion url.encode("a/b/c") gibt a%2Fb%2Fczurück.
Die Funktion url.decode() gibt eine Zeichenfolge zurück, in der das URL-codierte Argument gemäß RFC 3986 in eine reguläre Zeichenfolge decodiert wird.
Beispiel:
Die Funktion url.decode("a%2Fb%2Fc") gibt a/b/czurück.
Die Funktion is-ipv4() verwendet eine IP-Adresse als Argument und gibt den Booleschen Wert True zurück, wenn die IP-Adresse das IPv4-Format hat.
Die Funktion is-ipv4(10.10.10.10) gibt Truezurück
Die Funktion is-ipv6() verwendet eine IP-Adresse als Argument und gibt den Booleschen Wert True zurück, wenn die IP-Adresse das IPv6-Format hat.
Die Funktion is-ipv6(2001:DB8::) gibt Truezurück
Die Funktion startswith() bestimmt, ob eine Zeichenfolge mit einem bestimmten Präfix beginnt. Diese Funktion erfordert zwei obligatorische Zeichenfolgenargumente.
beginnt mit (str, sub_str)
Diese Funktion gibt True zurück, wenn die Zeichenfolge (str) mit der Teilzeichenfolge (sub_str) beginnt.
Beispiele:
startswith('Citrix', 'Ci') gibt Truezurück.startswith('Citrix', 'iC') gibt Falsezurückstartswith('Citrix', 'Ab') gibt FalsezurückDie Funktion endswith() bestimmt, ob eine Zeichenfolge mit einem bestimmten Suffix endet. Diese Funktion erfordert zwei obligatorische Zeichenfolgenargumente.
endet mit (str, sub_str)
Diese Funktion gibt True zurück, wenn die Zeichenfolge (str) mit der Teilzeichenfolge (sub_str) endet.
Beispiele:
endswith('Citrix', 'ix') gibt Truezurück.endswith('Citrix', 'Ix') gibt Falsezurück.endswith('Citrix', 'ab') gibt Falsezurück.Die Funktion contains() ermittelt, ob eine Zeichenfolge eine bestimmte Teilzeichenfolge enthält. Diese Funktion erfordert zwei obligatorische Zeichenfolgenargumente.
enthält (str, sub_str)
Diese Funktion gibt True zurück, wenn die Teilzeichenfolge (sub_str) irgendwo innerhalb der Zeichenfolge (str) enthalten ist.
Beispiel:
contains('Citrix', 'tri') gibt Truezurück.contains('Citrix', 'Ci') gibt Truezurück.contains('Citrix', 'ti') gibt FalsezurückVerwenden Sie die Funktion substring() , um eine Teilzeichenfolge aus einer Zeichenfolge zu extrahieren.
Teilzeichenfolge (Str, Startindex, Endindex)
Diese Funktion erfordert die beiden obligatorischen Argumente und ein optionales ganzzahliges Argument.
str (Pflicht)Startindex (Pflichtfeld)end_index (Optional)Diese Funktion gibt die Teilzeichenfolge der Zeichenfolge (str) zurück, die zwischen den angegebenen Indexpositionen liegt. Wenn Sie die Endindexposition nicht angeben, extrahiert die Funktion die Teilzeichenfolge vom Startindex bis zum Ende der Zeichenfolge.
Notiz
Wenn Sie
end_indexangeben, schließt die Teilzeichenfolge das Zeichen an der Positionend_indexaus.
Beispiel:
Die Funktion substring('Citrix', 2) gibt trixzurück
Die Funktion substring('Citrix', 10) gibt (") zurück.
In diesem Beispiel gibt die Funktion eine leere Zeichenfolge zurück, da sie eine ungültige Position start_index hat.
Die Funktion substring('Citrix', 2, 4) gibt trzurück
In diesem Beispiel extrahiert die Funktion die Zeichen zwischen 2 und 4 Indexpositionen.
Die Funktion substring('Citrix', -3) gibt rixzurück
Wenn Sie Zeichen extrahieren möchten, die sich am Ende der Zeichenfolge befinden, geben Sie einen negativen Wert für das Argument start_index an.
In diesem Beispiel extrahiert die Funktion die Teilzeichenfolge, die die letzten drei Zeichen in der Zeichenfolge enthält.
Die Funktion multiple() verwendet zwei Argumente:
Argument 1: eine Zahl, Zeichenfolge, Boolescher Wert, IP-Adresse, TCP-Portoder Passwort
Argument 2: eine Zahl
Die Funktion multiple(argument1, argument2) gibt eine Liste mit vielen Kopien von Argument 1 zurück. Die Anzahl der Kopien entspricht der Zahl, die an Argument 2 übergeben wird.
Beispiele:
Die Funktion multiple(10.10.10.10, 3) gibt [10.10.10.10, 10.10.10.10, 10.10.10.10]zurück.
Die Funktion multiple(8080, 4) gibt [8080, 8080, 8080, 8080]zurück.
Die Funktion reverse() verwendet eine Liste von Elementen als Argument und gibt eine Liste mit denselben Elementen zurück, die jedoch in umgekehrter Reihenfolge aufgelistet sind.
Das Argument kann eine Liste der folgenden integrierten Typen sein:
SchnurNummerIP-AdresseIP-NetzwerkTCP-PortBoolescher WertPasswortObjektDateiZertifikatsdateiSchlüsseldateiZertifikatsschlüsselBeispiele: