Text, reťazec a bajtové pole
Funkcie pre reťazce a kolekcie v skripte TapHome — LENGTH, BYTECOLLECTION, INDEXOF, COPY, REPLACE, SPLIT, COMPARE, APPEND, INSERT, REMOVEAT, GETAT, SETAT, ENCODE, DECODE, EQUALS.
LENGTH
Vráti dĺžku objektu alebo počet bajtov. Objekt môže byť číslo, boolean, reťazec alebo kolekcia.
LENGTH( object )Príklady:
LENGTH(“Hello World”) (Result is 11)
LENGTH(“40”) (Result is 2)
LENGTH(40) (Result is 8)
LENGTH(BYTECOLLECTION(“010203”) (Result is 3)BYTECOLLECTION
Vytvorí Collection
BYTECOLLECTION( bytes )Príklady:
BYTECOLLECTION(“010203”) (Result is Collection<UInt8> {01, 02, 03})
BYTECOLLECTION(“aa, be1-1,fe”) (Result is Collection<UInt8> {aa be 11 fe})INDEXOF
Vráti index zadaného prvku v reťazci alebo v kolekcii. Vráti -1, ak prvok nemožno nájsť.
INDEXOF( string/collection, element )Príklady:
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
Skopíruje zadaný reťazec alebo kolekciu (alebo ich časť).
COPY( string/collection, startIndex, length)Príklady:
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
Vráti nový reťazec alebo kolekciu, v ktorej sa všetky výskyty zadanej hodnoty nahradia novou hodnotou.
REPLACE( string/collection, oldValue, newValue)Príklady:
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
Rozdelí reťazec na podreťazce podľa zadaných separátorov.
SPLIT( string, string )
SPLIT( string, char )
SPLIT( string, Collection<string> )
SPLIT( string, Collection<char> )Príklady:
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
Porovná dva reťazce a vráti celé číslo, ktoré udáva ich relatívne poradie.
COMPARE( string, string, CompareOptions )Príklady:
COMPARE("abc", “abc”) (Result is 0)
COMPARE("abc", “ABC”) (Result is 32)
COMPARE("abc", “ABC”, CompareOptions.IgnoreCase) (Result is 0)APPEND
Pridá hodnotu do kolekcie alebo reťazca a vráti nový objekt s pridanou hodnotou.
APPEND( string, string )
APPEND( Collection, value )Príklady:
APPEND({1, 2}, 3) (Result is Collection<Double>{1, 2, 3})
APPEND("abc", “def”) (Result is “abcdef”)INSERT
Vloží hodnotu do kolekcie alebo reťazca. Vráti kolekciu alebo reťazec s vloženou hodnotou.
INSERT( collection, index, value )
INSERT( string, index, value )Príklady:
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
Odstráni prvky z kolekcie alebo reťazca na základe indexu prvku a dĺžky. Vráti kolekciu alebo reťazec bez špecifikovaných prvkov.
REMOVEAT( collection, index, length )
REMOVEAT( string, index, length )Príklady:
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
Získa hodnotu prvku z kolekcie alebo reťazca na základe zadaného indexu.
GETAT( collection, index )
GETAT( string, index )Príklady:
GETAT(“Hello”, 2) (Result is “l”)
GETAT({1, 2, 4}, 2) (Result is 4)SETAT
Nastaví hodnotu prvku v kolekcii alebo reťazci na zadanom indexe.
SETAT( collection, index, value )
SETAT( string, index, value )Príklady:
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
Zakóduje zadaný reťazec pomocou jedného z formátov a vráti nový reťazec.
ENCODE( string, format )Podporované formáty:
- XML
- Base64
Príklady:
ENCODE("Hello", “xml”) (Result is “Hello”)
ENCODE("<Hello id=1>", “xml”) (Result is “<Hello id=1>”)
ENCODE("Hello", “base64”) (Result is “SGVsbG8=”)DECODE
Dekóduje zadaný reťazec pomocou jedného z formátov a vráti nový reťazec.
DECODE( string, format )Podporované formáty:
- XML
- Base64
Príklady:
DECODE("Hello", “xml”) (Result is “Hello”)
DECODE("<Hello id=1>", “xml”) (Result is “<Hello id=1>”)
DECODE("SGVsbG8=", “base64”) (Result is “Hello”)EQUALS
Porovná dve čísla s pohyblivou desatinnou čiarkou. Čísla sa považujú za rovné, ak | n1 - n2 | < epsilon. Predvolená hodnota prahu (*epsilon) je 0,005 a je voliteľným parametrom.
EQUALS( number1, number2, epsilon=0.005 )Príklady:
EQUALS(1.33, 1.33) 1.0 (true)
EQUALS(1.333, 1.3335) 1.0 (true)
EQUALS(1.333, 1.338) 1.0 (false)
EQUALS(1.333, 1.338, 0.01) 1.0 (true)
EQUALS(NAN, NAN) 1.0 (true)