tuple_str_first_n
— Ausschneiden aller Zeichen bis zur Position „n“ aus einem Stringtupel.
tuple_str_first_n
schneidet aus jedem String des Eingabetupels
String
die ersten Zeichen bis einschließlich zur Position „n“ aus
und liefert sie als einen neuen String in dem Ausgabetupel
Substring
zurück (Bemerkung: Die Position innerhalb eines Strings
wird beginnend mit 0 gezählt).
Die Zahl „n“ wird hierbei durch das zweite Eingabetupel Position
definiert. Enthält Position
nur ein Element, so legt dieses Element
die Zahl „n“ für alle Strings von String
fest. Beinhaltet
Position
genauso viele Elemente wie String
, so legt das
erste Element von Position
die Zahl „n“ für den ersten
String von String
fest, das zweite Element von Position
legt die Zahl „n“ für den zweiten String
von String
fest und so weiter. Enthält Position
mehr als ein
Element und besteht String
nur aus einem String, so werden aus
diesem String mehrere Anfangssegmente ausgeschnitten, deren Längen durch
die Elemente von Position
festgelegt sind. Beinhalten die beiden
Eingabetupel mehr als ein Element und besitzen sie eine unterschiedliche
Zahl an Elementen, so bricht tuple_str_first_n
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
String
leer ist und Position
nicht. Falls jedoch
Position
leer ist und String
nicht, wird eine
Fehlermeldung angezeigt.
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')
in einen
Byte-Modus umgeschaltet werden. Wenn 'filename_encoding' auf
'locale' gesetzt ist (legacy), verwendet dieser Operator immer den
Byte-Modus.
Für allgemeine Informationen zu String-Operationen siehe auch Tupel / String-Operationen.
HDevelop unterstützt eine Inline-Operation für tuple_str_first_n
,
die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden
kann:
Substring := str_firstn(String, Position)
String
(input_control) string(-array) →
(string)
Eingabetupel mit zu untersuchenden Strings.
Position
(input_control) number(-array) →
(integer / real)
Eingabetupel mit den Positionen „n“.
Substring
(output_control) string(-array) →
(string)
Die ersten Zeichen bis zu den Positionen „n“ aller Eingabestrings.
tuple_str_last_n
,
tuple_substr
,
tuple_strstr
,
tuple_strrstr
,
tuple_strlen
,
tuple_strchr
,
tuple_strrchr
,
tuple_split
,
tuple_environment
Foundation