tuple_str_bit_selecttuple_str_bit_selectTupleStrBitSelectTupleStrBitSelect (Operator)

Name

tuple_str_bit_selecttuple_str_bit_selectTupleStrBitSelectTupleStrBitSelect — Auswählen eines einzelnen Zeichens oder Bits aus einem Tupel.

Signatur

tuple_str_bit_select( : : Tuple, Index : Selected)

Herror tuple_str_bit_select(const char* Tuple, const Hlong Index, char* Selected)

Herror T_tuple_str_bit_select(const Htuple Tuple, const Htuple Index, Htuple* Selected)

void TupleStrBitSelect(const HTuple& Tuple, const HTuple& Index, HTuple* Selected)

HTuple HTuple::TupleStrBitSelect(const HTuple& Index) const

static void HOperatorSet.TupleStrBitSelect(HTuple tuple, HTuple index, out HTuple selected)

HTuple HTuple.TupleStrBitSelect(HTuple index)

Beschreibung

tuple_str_bit_selecttuple_str_bit_selectTupleStrBitSelectTupleStrBitSelectTupleStrBitSelect wählt aus einem Tupel TupleTupleTupleTupletuple von Strings und/oder Zahlen ein einzelnes Zeichen beziehungsweise Bit aus und gibt es in dem Ausgabetupel SelectedSelectedSelectedSelectedselected zurück. TupleTupleTupleTupletuple kann hierbei aus Strings und/oder ganzen Zahlen bestehen. Welches Zeichen beziehungsweise Bit ausgewählt wird, hängt von dem Eingabeparameter IndexIndexIndexIndexindex ab, der ausschließlich aus einer Zahl „n“ bestehen darf. Ist dies eine Gleitkommazahl, so muss sie eine ganze Zahl repräsentieren (d.h., alle Nachkommastellen müssen 0 sein). Das Ausgabetupel SelectedSelectedSelectedSelectedselected enthält nun für jedes Element aus TupleTupleTupleTupletuple ein neues Element, das aus dem „n-ten“ Zeichen (bei Strings) beziehungsweise dem „n-ten“ Bit (bei ganzen Zahlen) des korrespondierenden Elements von TupleTupleTupleTupletuple besteht.

Falls TupleTupleTupleTupletuple leer ist, wird eine Fehlermeldung angezeigt.

Unicode Codepoints versus Bytes

Der Index bezieht sich auf Unicode Codepoints. Ein Codepoint kann aus mehreren Bytes im UTF-8 String zusammengesetzt sein. Wenn der Index sich auf die Bytes des Strings beziehen soll, 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_str_bit_selecttuple_str_bit_selectTupleStrBitSelectTupleStrBitSelectTupleStrBitSelect, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Selected := Tuple{Index}

Ausführungsinformationen

Parameter

TupleTupleTupleTupletuple (input_control)  tuple(-array) HTupleHTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Eingabetupel.

IndexIndexIndexIndexindex (input_control)  integer HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Position des Zeichens oder Bits.

SelectedSelectedSelectedSelectedselected (output_control)  tuple(-array) HTupleHTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Tupel mit den ausgewählten Zeichen und Bits.

Alternativen

tuple_selecttuple_selectTupleSelectTupleSelectTupleSelect, tuple_first_ntuple_first_nTupleFirstNTupleFirstNTupleFirstN, tuple_last_ntuple_last_nTupleLastNTupleLastNTupleLastN, tuple_concattuple_concatTupleConcatTupleConcatTupleConcat, tuple_strchrtuple_strchrTupleStrchrTupleStrchrTupleStrchr, tuple_strrchrtuple_strrchrTupleStrrchrTupleStrrchrTupleStrrchr, tuple_str_first_ntuple_str_first_nTupleStrFirstNTupleStrFirstNTupleStrFirstN, tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNTupleStrLastN, tuple_substrtuple_substrTupleSubstrTupleSubstrTupleSubstr, tuple_andtuple_andTupleAndTupleAndTupleAnd, tuple_ortuple_orTupleOrTupleOrTupleOr, tuple_xortuple_xorTupleXorTupleXorTupleXor, tuple_nottuple_notTupleNotTupleNotTupleNot

Siehe auch

tuple_removetuple_removeTupleRemoveTupleRemoveTupleRemove

Modul

Foundation