KlassenKlassenKlassenKlassen | | | | Operatoren

tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit (Operator)

Name

tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit — Aufteilen von Strings in mehrere Strings mittels Trennsymbolen.

Signatur

tuple_split( : : String, Separator : Substrings)

Herror tuple_split(const char* String, const char* Separator, char* Substrings)

Herror T_tuple_split(const Htuple String, const Htuple Separator, Htuple* Substrings)

Herror tuple_split(const HTuple& String, const HTuple& Separator, char* Substrings)

Herror tuple_split(const HTuple& String, const HTuple& Separator, HTuple* Substrings)

void TupleSplit(const HTuple& String, const HTuple& Separator, HTuple* Substrings)

HTuple HTuple::TupleSplit(const HTuple& Separator) const

void HOperatorSetX.TupleSplit(
[in] VARIANT String, [in] VARIANT Separator, [out] VARIANT* Substrings)

VARIANT HTupleX.TupleSplit(
[in] VARIANT String, [in] VARIANT Separator)

static void HOperatorSet.TupleSplit(HTuple stringVal, HTuple separator, out HTuple substrings)

HTuple HTuple.TupleSplit(HTuple separator)

Beschreibung

tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit sucht in den einzelnen Strings des Eingabetupels StringStringStringStringStringstringVal nach einem oder mehreren Trennsymbolen, die in dem Eingabetupel SeparatorSeparatorSeparatorSeparatorSeparatorseparator definiert sind. Die untersuchten Strings werden dann in die Teil-Strings, die zwischen den Trennsymbolen stehen, aufgeteilt. Die beiden Eingabetupel StringStringStringStringStringstringVal und SeparatorSeparatorSeparatorSeparatorSeparatorseparator müssen ausschließlich aus Strings bestehen. Anderenfalls bricht tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit mit einem entsprechenden Fehler ab. Enthalten die Strings von SeparatorSeparatorSeparatorSeparatorSeparatorseparator mehr als ein Zeichen, so werden alle in einem String enthaltenen Zeichen als Trennsymbole interpretiert. Beinhaltet StringStringStringStringStringstringVal nur einen einzigen String, so wird dieser anhand der im Tupel SeparatorSeparatorSeparatorSeparatorSeparatorseparator definierten Trennzeichen aufgeteilt. Besteht StringStringStringStringStringstringVal zum Beispiel aus dem String „data1;data2:7;data3“ und enthält SeparatorSeparatorSeparatorSeparatorSeparatorseparator die beiden Strings „;“ und „:;“, so beinhaltet das Ausgabetupel SubstringsSubstringsSubstringsSubstringsSubstringssubstrings die Strings „data1“, „data2:7“, „data3“ als Ergebnis der Trennung gemäß dem ersten Element von SeparatorSeparatorSeparatorSeparatorSeparatorseparator und die Strings „data1“, „data2“, „7“ und „data3“ als Ergebnis der Trennung gemäß dem zweiten Element von SeparatorSeparatorSeparatorSeparatorSeparatorseparator. Besitzen beide Eingabetupel StringStringStringStringStringstringVal und SeparatorSeparatorSeparatorSeparatorSeparatorseparator gleich viele Elemente, so werden sie elementweise bearbeitet, das heißt, der erste String von StringStringStringStringStringstringVal wird gemäß den Trennzeichen des ersten Strings von SeparatorSeparatorSeparatorSeparatorSeparatorseparator aufgeteilt, der zweite String von StringStringStringStringStringstringVal wird gemäß den Trennzeichen des zweiten Strings von SeparatorSeparatorSeparatorSeparatorSeparatorseparator aufgeteilt und so weiter. Besteht SeparatorSeparatorSeparatorSeparatorSeparatorseparator nur aus einem String, so dienen die dort definierten Trennzeichen zur Aufteilung sämtlicher Strings des Eingabetupels StringStringStringStringStringstringVal. Weisen die beiden Eingabetupel StringStringStringStringStringstringVal und SeparatorSeparatorSeparatorSeparatorSeparatorseparator eine unterschiedliche Anzahl an Elementen auf, die von 1 verschieden ist, so bricht tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit mit einem entsprechenden Fehler ab.

Sonderfall: Leere Eingabetupel

Falls eines oder beide der Eingabetupel leer sind, gibt der Operator ein leeres Tupel zurück.

HDevelop Inline-Operation

HDevelop unterstützt eine Inline-Operation für tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Substrings := split(String, Separator)

Parallelisierung

Parameter

StringStringStringStringStringstringVal (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Eingabetupel mit aufzuteilenden Strings.

SeparatorSeparatorSeparatorSeparatorSeparatorseparator (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Eingabetupel mit Trennzeichen.

SubstringsSubstringsSubstringsSubstringsSubstringssubstrings (output_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Zwischen den Trennzeichen aufgeteilte Strings.

Alternativen

tuple_strstrtuple_strstrTupleStrstrtuple_strstrTupleStrstrTupleStrstr, tuple_strrstrtuple_strrstrTupleStrrstrtuple_strrstrTupleStrrstrTupleStrrstr, tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr, tuple_strrchrtuple_strrchrTupleStrrchrtuple_strrchrTupleStrrchrTupleStrrchr, tuple_strlentuple_strlenTupleStrlentuple_strlenTupleStrlenTupleStrlen, tuple_str_first_ntuple_str_first_nTupleStrFirstNtuple_str_first_nTupleStrFirstNTupleStrFirstN, tuple_str_last_ntuple_str_last_nTupleStrLastNtuple_str_last_nTupleStrLastNTupleStrLastN, tuple_environmenttuple_environmentTupleEnvironmenttuple_environmentTupleEnvironmentTupleEnvironment

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren