tuple_splittuple_splitTupleSplitTupleSplit (Operator)

Name

tuple_splittuple_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)

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

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

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

HTuple HTuple.TupleSplit(HTuple separator)

Beschreibung

tuple_splittuple_splitTupleSplitTupleSplitTupleSplit sucht in den einzelnen Strings des Eingabetupels StringStringStringStringstringVal nach den Trennsymbolen, die in dem Eingabetupel SeparatorSeparatorSeparatorSeparatorseparator definiert sind. tuple_splittuple_splitTupleSplitTupleSplitTupleSplit teilt dann die untersuchten Strings in die Teilstrings, die durch die Trennsymbole separiert werden, und gibt diese in SubstringsSubstringsSubstringsSubstringssubstrings zurück. Das Verhalten hängt von der Länge der Eingabe-Tupel ab:

Anmerkungen zum Parameter SeparatorSeparatorSeparatorSeparatorseparator: Enthalten die Strings von SeparatorSeparatorSeparatorSeparatorseparator mehr als ein Zeichen, so werden alle in einem String enthaltenen Zeichen als Trennsymbole interpretiert (siehe das oben gegebene Beispiel). Folgen in einem String aus StringStringStringStringstringVal mehrere Trennsymbole direkt einander, so werden diese wie ein einzelnes Trennsymbol behandelt. Trennsymbole am Anfang und am Ende von StringStringStringStringstringVal führen nicht zu einem leeren Teilstring.

Es gilt zu beachten, dass beide Eingabetupel (StringStringStringStringstringVal und SeparatorSeparatorSeparatorSeparatorseparator) ausschließlich aus Strings bestehen müssen. Anderenfalls bricht tuple_splittuple_splitTupleSplitTupleSplitTupleSplit mit einem entsprechenden Fehler ab. Weisen die beiden Eingabetupel eine unterschiedliche Anzahl an Elementen auf, die von 1 verschieden ist, so bricht tuple_splittuple_splitTupleSplitTupleSplitTupleSplit mit einem entsprechenden Fehler ab.

Unicode Codepoints versus Bytes

Die Trennzeichen werden als Unicode Codepoints behandelt. Ein Codepoint kann aus mehreren Bytes im UTF-8 String zusammengesetzt sein. Wenn die Trennzeichen als einzelne Bytes behandelt werden sollen, kann dieser Operator mit set_system('tsp_tuple_string_operator_mode', 'byte')set_system("tsp_tuple_string_operator_mode", "byte")SetSystem("tsp_tuple_string_operator_mode", "byte")SetSystem("tsp_tuple_string_operator_mode", "byte")SetSystem("tsp_tuple_string_operator_mode", "byte") in einen Byte-Modus umgeschaltet werden. Wenn 'filename_encoding'"filename_encoding""filename_encoding""filename_encoding""filename_encoding" auf 'locale'"locale""locale""locale""locale" gesetzt ist (legacy), verwendet dieser Operator immer den Byte-Modus.

Für allgemeine Informationen zu String-Operationen siehe auch Tupel / String-Operationen.

HDevelop Inline-Operation

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

Substrings := split(String, Separator)

Ausführungsinformationen

Parameter

StringStringStringStringstringVal (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Eingabetupel mit aufzuteilenden Strings.

SeparatorSeparatorSeparatorSeparatorseparator (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Eingabetupel mit Trennsymbolen.

SubstringsSubstringsSubstringsSubstringssubstrings (output_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Teil-Strings nach Aufteilung mittels Trennsymbolen.

Alternativen

tuple_strstrtuple_strstrTupleStrstrTupleStrstrTupleStrstr, tuple_strrstrtuple_strrstrTupleStrrstrTupleStrrstrTupleStrrstr, tuple_strchrtuple_strchrTupleStrchrTupleStrchrTupleStrchr, tuple_strrchrtuple_strrchrTupleStrrchrTupleStrrchrTupleStrrchr, tuple_strlentuple_strlenTupleStrlenTupleStrlenTupleStrlen, tuple_str_first_ntuple_str_first_nTupleStrFirstNTupleStrFirstNTupleStrFirstN, tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNTupleStrLastN, tuple_environmenttuple_environmentTupleEnvironmentTupleEnvironmentTupleEnvironment

Modul

Foundation