Tekst, niz znakova i polje bajtova
Funkcije skripte TapHome za nizove znakova i zbirke: LENGTH, BYTECOLLECTION, INDEXOF, COPY, REPLACE, SPLIT, COMPARE, APPEND, INSERT, REMOVEAT, GETAT, SETAT, ENCODE, DECODE, EQUALS.
LENGTH
Vraća duljinu objekta ili broj bajtova. Objekt može biti broj, logička vrijednost, niz znakova ili zbirka.
LENGTH( object )Primjeri:
LENGTH(“Hello World”) (Result is 11)
LENGTH(“40”) (Result is 2)
LENGTH(40) (Result is 8)
LENGTH(BYTECOLLECTION(“010203”) (Result is 3)BYTECOLLECTION
Izrađuje Collection<UInt8> iz zadanih heksadecimalnih vrijednosti.
BYTECOLLECTION( bytes )Primjeri:
BYTECOLLECTION(“010203”) (Result is Collection<UInt8> {01, 02, 03})
BYTECOLLECTION(“aa, be1-1,fe”) (Result is Collection<UInt8> {aa be 11 fe})INDEXOF
Vraća indeks zadanog elementa u nizu znakova ili zbirci. Ako element nije pronađen, vraća -1.
INDEXOF( string/collection, element )Primjeri:
INDEXOF("Hello", “H”) (Result is 0)
INDEXOF("Hello World", “Wor”) (Result is 6)
INDEXOF("Hello World", “Wor”) (Result is 6)
INDEXOF("Hello World", “or12”) (Result is -1)
INDEXOF(BYTECOLLECTION("ab cd ee ff 01 02"), 2) (Result is 5)
INDEXOF({1, 2, 3}, 3) (Result is 2)COPY
Kopira zadani niz znakova ili zbirku (ili njihov dio).
COPY( string/collection, startIndex, length)Primjeri:
COPY("Hello") (Result is “Hello”)
COPY("Hello World", 2) (Result is “llo World”)
COPY("Hello World", 2, 4) (Result is “llo ”)
COPY(BYTEARRAY("01020304") (Result is byte array 01020304)
COPY(BYTEARRAY("01020304", 2, 1) (Result is byte array 03)REPLACE
Vraća novi niz znakova ili zbirku u kojoj su sva pojavljivanja zadane vrijednosti zamijenjena novom vrijednošću.
REPLACE( string/collection, oldValue, newValue)Primjeri:
REPLACE("Hello", “l”, “”) (Result is “Heo”)
REPLACE("Hello", “lo”, “22”) (Result is “Hel22”)
REPLACE(BYTECOLLECTION(“050607"), 5, 9) (Result is Collection<UInt8>{09, 06, 07}SPLIT
Dijeli niz znakova na podnizove prema parametrima razdjelnika.
SPLIT( string, string )
SPLIT( string, char )
SPLIT( string, Collection<string> )
SPLIT( string, Collection<char> )Primjeri:
SPLIT("1;2;3;4", “;”) (Result is Collection<String>{“1”, “2”, “3”, “4”})
SPLIT("1;2;3.4", “2;”) (Result is Collection<String>{“1;”, “3.4”})
SPLIT("1;2;3.4", {“2”, “3.”) (Result is Collection<String>{“1;”, “;”, “4”})COMPARE
Uspoređuje 2 niza znakova i vraća cijeli broj koji pokazuje njihov međusobni položaj u redoslijedu sortiranja.
COMPARE( string, string, CompareOptions )Primjeri:
COMPARE("abc", “abc”) (Result is 0)
COMPARE("abc", “ABC”) (Result is 32)
COMPARE("abc", “ABC”, CompareOptions.IgnoreCase) (Result is 0)APPEND
Dodaje vrijednost na kraj zbirke ili niza znakova i vraća novi objekt s dodanom vrijednošću.
APPEND( string, string )
APPEND( Collection, value )Primjeri:
APPEND({1, 2}, 3) (Result is Collection<Double>{1, 2, 3})
APPEND("abc", “def”) (Result is “abcdef”)INSERT
Umeće vrijednost u zbirku ili niz znakova. Vraća zbirku ili niz znakova s umetnutom vrijednošću.
INSERT( collection, index, value )
INSERT( string, index, value )Primjeri:
INSERT(“Hello”, 5, “ World”) (Result is “Hello World”)
INSERT(“Hello”, 1, “i”) (Result is “Hiello”)
INSERT({1, 2, 4}, 2, 3) (Result is Collection<Double>{1, 2, 3, 4})REMOVEAT
Uklanja elemente iz zbirke ili niza znakova na temelju indeksa elementa i duljine. Vraća zbirku ili niz znakova bez zadanih elemenata.
REMOVEAT( collection, index, length )
REMOVEAT( string, index, length )Primjeri:
REMOVEAT(“Hello”, 1) (Result is “Hllo”)
REMOVEAT(“Hello”, 3, 2) (Result is “Ho”)
REMOVEAT({1, 2, 3, 4}, 2) (Result is Collection<Double>{1, 2, 4})
REMOVEAT({1, 2, 3, 4}, 2, 2) (Result is Collection<Double>{1, 2})GETAT
Dohvaća vrijednost elementa iz zbirke ili niza znakova na temelju zadanog indeksa.
GETAT( collection, index )
GETAT( string, index )Primjeri:
GETAT(“Hello”, 2) (Result is “l”)
GETAT({1, 2, 4}, 2) (Result is 4)SETAT
Postavlja vrijednost elementa u zbirci ili nizu znakova na zadanom indeksu.
SETAT( collection, index, value )
SETAT( string, index, value )Primjeri:
SETAT(“Hello”, 1, “a”) (Result is “Hallo”)
SETAT(“Hello”, 4, “o World”) (Result is “Hello World”)
SETAT({1, 2, 4}, 2, 3) (Result is Collection<Double>{1, 2, 3})ENCODE
Kodira zadani niz znakova u jednom od formata i vraća novi niz znakova.
ENCODE( string, format )Podržani formati:
- XML
- Base64
Primjeri:
ENCODE("Hello", “xml”) (Result is “Hello”)
ENCODE("<Hello id=1>", “xml”) (Result is “<Hello id=1>”)
ENCODE("Hello", “base64”) (Result is “SGVsbG8=”)DECODE
Dekodira zadani niz znakova iz jednog od formata i vraća novi niz znakova.
DECODE( string, format )Podržani formati:
- XML
- Base64
Primjeri:
DECODE("Hello", “xml”) (Result is “Hello”)
DECODE("<Hello id=1>", “xml”) (Result is “<Hello id=1>”)
DECODE("SGVsbG8=", “base64”) (Result is “Hello”)EQUALS
Uspoređuje dva broja s pomičnim zarezom. Brojevi se smatraju jednakima ako je |n1 - n2| < epsilon. Zadana vrijednost praga (epsilon) iznosi 0,005 i taj parametar nije obavezan.
EQUALS( number1, number2, epsilon=0.005 )Primjeri:
EQUALS(1.33, 1.33) 1.0 (true)
EQUALS(1.333, 1.3335) 1.0 (true)
EQUALS(1.333, 1.338) 0.0 (false)
EQUALS(1.333, 1.338, 0.01) 1.0 (true)
EQUALS(NAN, NAN) 1.0 (true)