Funkce elektronického výkaznictví SPLIT
Funkce SPLIT
rozdělí zadaný vstupní řetězec do podřetězců a vrátí výsledek jako novou hodnotu typu seznam záznamů.
Syntaxe 1
SPLIT (input, length)
Tato syntaxe rozdělí zadaný vstupní řetězec na podřetězce, přičemž každý má zadanou délku.
Syntaxe 2
SPLIT (input, delimiter)
Tato syntaxe rozdělí zadaný vstupní řetězec na podřetězce na základě určeného oddělovače.
Argumenty
input
: Řetězec
Text, který má být rozdělen.
length
: Celé číslo
Maximální délka jednoho podřetězce.
delimiter
: Řetězec
Oddělovač k oddělení dílčích řetězců.
Vrácené hodnoty
Seznam záznamů
Výsledný seznam záznamů.
Poznámky k použití
Struktura záznamů ve vráceném seznamu se skládá z pole Value typu řetězec. Každý záznam ve vráceném seznamu obsahuje vygenerované podřetězce v tomto poli.
Je-li argument delimiter
prázdný, vrátí se nový seznam, který se skládá z jednoho záznamu obsahujícího pole Value typu řetězec. Toto pole obsahuje vstupní text.
Pokud je argument input
prázdný, vrátí se nový prázdný seznam. Pokud není zadán argument input
nebo argument delimiter
, dojde k výjimce aplikace.
Příklad 1
SPLIT ("abcd", 3)
vrátí nový seznam obsahující dva záznamy s polem Value typu řetězec. Pole Value v prvním záznamu obsahuje text "abc" a pole Value v druhém záznamu obsahuje text "d".
Příklad 2
SPLIT ("XAb aBy", "aB")
vrátí nový seznam obsahující tři záznamy s poleem Value typu řetězec. Pole Value v prvním záznamu obsahuje text "X", pole Value v druhém záznamu obsahuje text " ", a pole Value v třetím záznamu obsahuje text "y".
Příklad 3
Můžete použít funkci INDEX pro přístup k jednotlivým prvkům zadaného vstupního řetězce. Pokud zadáte zdroj dat MyList typu vypočítané pole a nakonfigurujete pro něj výraz SPLIT("abc", 1)
, výraz INDEX(MyList,2).Value
vrátí textovou hodnotu "b".
Příklad 4
Funkce ENUMERATE vám také může pomoci s přístupem k jednotlivým prvkům zadaného vstupního řetězce. Pokud nejprve zadáte zdroj dat MyList typu Vypočítané pole a nakonfigurujte pro něj výraz SPLIT("abc", 1)
a poté zadáte zdroj dat EnumeratedList typu Vypočítané pole a nakonfigurujte pro něj výraz ENUMERATE(MyList)
, výraz FIRSTORNULL(WHERE(EnumeratedList, EnumeratedList.Number=2)).Value
vrátí textovou hodnotu "b".