tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n (Operator)
Name
tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n — Cut all characters starting at position “n” out of a string tuple.
Signature
def tuple_str_last_n(string: MaybeSequence[str], position: MaybeSequence[Union[float, int]]) -> Sequence[str]
def tuple_str_last_n_s(string: MaybeSequence[str], position: MaybeSequence[Union[float, int]]) -> str
Description
tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n cuts all characters from position “n” to the end
of the string out of each string of the input tuple StringStringStringstringValstring and
returns them as new strings in the output tuple SubstringSubstringSubstringsubstringsubstring. The
position “n” is determined by the second input tuple PositionPositionPositionpositionposition. If
PositionPositionPositionpositionposition only contains one element, this element contains “n”. If
StringStringStringstringValstring and PositionPositionPositionpositionposition have got the same number of elements,
the first element of PositionPositionPositionpositionposition determines the start position for the
first string of StringStringStringstringValstring, the second element of PositionPositionPositionpositionposition does
so for the second string of StringStringStringstringValstring and so on. If PositionPositionPositionpositionposition
contains more than one element and StringStringStringstringValstring contains only one string,
tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n cuts more than one substrings out of this string.
The elements of PositionPositionPositionpositionposition then determine the start positions for
these substrings. If both input tuples contain more than one element but
differ in the number of elements, tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n returns an error.
If both input tuples are empty, the operator returns an empty tuple.
Similarly, if StringStringStringstringValstring is empty and PositionPositionPositionpositionposition is
not, the operator returns an empty tuple. In contrast, if PositionPositionPositionpositionposition
is empty and StringStringStringstringValstring is not, an exception is raised.
Unicode code points versus bytes
The position references Unicode code points. One Unicode code point may be
composed of multiple bytes in the UTF-8 string. If the position should
reference the raw bytes of the string, this operator can be switched to byte
mode with 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")set_system("tsp_tuple_string_operator_mode","byte"). If
'filename_encoding'"filename_encoding""filename_encoding""filename_encoding""filename_encoding" is set to 'locale'"locale""locale""locale""locale" (legacy), this
operator always uses the byte mode.
For general information about string operations see
Tuple / String Operations.
HDevelop In-line Operation
HDevelop provides an in-line operation for tuple_str_last_ntuple_str_last_nTupleStrLastNTupleStrLastNtuple_str_last_n,
which can be used in an expression in the following syntax:
Substring := str_lastn(String, Position)
Execution Information
- Multithreading type: independent (runs in parallel even with exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
StringStringStringstringValstring (input_control) string(-array) → HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Input tuple with string(s) to examine.
PositionPositionPositionpositionposition (input_control) number(-array) → HTupleMaybeSequence[Union[float, int]]HTupleHtuple (integer / real) (int / long / double) (Hlong / double) (Hlong / double)
Input tuple with position(s) “n”.
SubstringSubstringSubstringsubstringsubstring (output_control) string(-array) → HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
The last characters of the string(s) starting at position “n”.
Alternatives
tuple_str_first_ntuple_str_first_nTupleStrFirstNTupleStrFirstNtuple_str_first_n,
tuple_substrtuple_substrTupleSubstrTupleSubstrtuple_substr,
tuple_strstrtuple_strstrTupleStrstrTupleStrstrtuple_strstr,
tuple_strrstrtuple_strrstrTupleStrrstrTupleStrrstrtuple_strrstr,
tuple_strlentuple_strlenTupleStrlenTupleStrlentuple_strlen,
tuple_strchrtuple_strchrTupleStrchrTupleStrchrtuple_strchr,
tuple_strrchrtuple_strrchrTupleStrrchrTupleStrrchrtuple_strrchr,
tuple_splittuple_splitTupleSplitTupleSplittuple_split,
tuple_environmenttuple_environmentTupleEnvironmentTupleEnvironmenttuple_environment
Module
Foundation