tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastN (Operator)

Name

tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastN — Ausschneiden aller Zeichen ab der Position „n“ aus einem Stringtupel.

Signatur

tuple_str_last_n( : : String, Position : Substring)

Herror tuple_str_last_n(const char* String, const Hlong Position, char* Substring)

Herror T_tuple_str_last_n(const Htuple String, const Htuple Position, Htuple* Substring)

void TupleStrLastN(const HTuple& String, const HTuple& Position, HTuple* Substring)

HTuple HTuple::TupleStrLastN(const HTuple& Position) const

static void HOperatorSet.TupleStrLastN(HTuple stringVal, HTuple position, out HTuple substring)

HTuple HTuple.TupleStrLastN(HTuple position)

Beschreibung

tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNTupleStrLastN schneidet aus jedem String des Eingabetupels StringStringStringStringstringVal alle Zeichen bis zum String-Ende beginnend mit dem Zeichen an der Position „n“ aus und liefert sie als einen neuen String in dem Ausgabetupel SubstringSubstringSubstringSubstringsubstring zurück. Die Zahl „n“ wird hierbei durch das zweite Eingabetupel PositionPositionPositionPositionposition definiert. Enthält PositionPositionPositionPositionposition nur ein Element, so legt dieses Element die Zahl „n“ für alle Strings von StringStringStringStringstringVal fest. Beinhaltet PositionPositionPositionPositionposition genauso viele Elemente wie StringStringStringStringstringVal, so legt das erste Element von PositionPositionPositionPositionposition die Zahl „n“ für den ersten String von StringStringStringStringstringVal fest, das zweite Element von PositionPositionPositionPositionposition legt die Zahl „n“ für den zweiten String von StringStringStringStringstringVal fest und so weiter. Enthält PositionPositionPositionPositionposition mehr als ein Element und besteht StringStringStringStringstringVal nur aus einem String, so werden aus diesem String mehrere Endsegmente ausgeschnitten, deren Länge durch die Elemente von PositionPositionPositionPositionposition festgelegt ist. Beinhalten die beiden Eingabetupel mehr als ein Element und besitzen sie eine unterschiedliche Zahl an Elementen, so bricht tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNTupleStrLastN mit einer Fehlermeldung ab.

Falls beide Eingabetupel leer sind, gibt der Operator ein leeres Tupel zurück. Gleichermaßen gibt der Operator ein leeres Tupel zurück, wenn StringStringStringStringstringVal leer ist und PositionPositionPositionPositionposition nicht. Falls jedoch PositionPositionPositionPositionposition leer ist und StringStringStringStringstringVal nicht, wird eine Fehlermeldung angezeigt.

Unicode Codepoints versus Bytes

Die Position bezieht sich auf Unicode Codepoints. Ein Codepoint kann aus mehreren Bytes im UTF-8 String zusammengesetzt sein. Wenn die Position 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_last_ntuple_str_last_nTupleStrLastNTupleStrLastNTupleStrLastN, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Substring := str_lastn(String, Position)

Ausführungsinformationen

Parameter

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

Eingabetupel mit zu untersuchenden Strings.

PositionPositionPositionPositionposition (input_control)  number(-array) HTupleHTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)

Eingabetupel mit den Positionen „n“.

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

Alle Zeichen von den Positionen „n“ bis zum String-Ende für alle Eingabestrings.

Alternativen

tuple_str_first_ntuple_str_first_nTupleStrFirstNTupleStrFirstNTupleStrFirstN, tuple_substrtuple_substrTupleSubstrTupleSubstrTupleSubstr, tuple_strstrtuple_strstrTupleStrstrTupleStrstrTupleStrstr, tuple_strrstrtuple_strrstrTupleStrrstrTupleStrrstrTupleStrrstr, tuple_strlentuple_strlenTupleStrlenTupleStrlenTupleStrlen, tuple_strchrtuple_strchrTupleStrchrTupleStrchrTupleStrchr, tuple_strrchrtuple_strrchrTupleStrrchrTupleStrrchrTupleStrrchr, tuple_splittuple_splitTupleSplitTupleSplitTupleSplit, tuple_environmenttuple_environmentTupleEnvironmentTupleEnvironmentTupleEnvironment

Modul

Foundation