tuple_findtuple_findTupleFindTupleFind (Operator)


tuple_findtuple_findTupleFindTupleFind — Return the indices of all occurrences of a tuple within another tuple.


tuple_find( : : Tuple, ToFind : Indices)

Herror tuple_find(const Hlong Tuple, const Hlong ToFind, Hlong* Indices)

Herror T_tuple_find(const Htuple Tuple, const Htuple ToFind, Htuple* Indices)

void TupleFind(const HTuple& Tuple, const HTuple& ToFind, HTuple* Indices)

HTuple HTuple::TupleFind(const HTuple& ToFind) const

static void HOperatorSet.TupleFind(HTuple tuple, HTuple toFind, out HTuple indices)

HTuple HTuple.TupleFind(HTuple toFind)


tuple_findtuple_findTupleFindTupleFindTupleFind searches TupleTupleTupleTupletuple sequentially for all occurrences of the values of the second tuple ToFindToFindToFindToFindtoFind and returns the indices in IndicesIndicesIndicesIndicesindices (in relation to the first input tuple TupleTupleTupleTupletuple). For example, if TupleTupleTupleTupletuple contains the values [3,4,5,6,1,2,3,4,0] and ToFindToFindToFindToFindtoFind contains the values [3,4], the output tuple IndicesIndicesIndicesIndicesindices will contain the values [0,6]. If the first tuple does not contain the second tuple as a subtuple, tuple_findtuple_findTupleFindTupleFindTupleFind returns -1 in IndicesIndicesIndicesIndicesindices. It is allowed to mix strings and numbers in the input tuples.

Exception: Empty input tuples

If either or both of the input tuples are empty, the operator returns an empty tuple.

HDevelop In-line Operation

HDevelop provides an in-line operation for tuple_findtuple_findTupleFindTupleFindTupleFind, which can be used in an expression in the following syntax:

Indices := find(Tuple, ToFind)

Execution Information


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

Input tuple to examine.

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

Input tuple with values to find.

IndicesIndicesIndicesIndicesindices (output_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Indices of the occurrences of the values to find in the tuple to examine.


tuple_find_firsttuple_find_firstTupleFindFirstTupleFindFirstTupleFindFirst, tuple_find_lasttuple_find_lastTupleFindLastTupleFindLastTupleFindLast, tuple_sorttuple_sortTupleSortTupleSortTupleSort, tuple_inversetuple_inverseTupleInverseTupleInverseTupleInverse, tuple_equal_elemtuple_equal_elemTupleEqualElemTupleEqualElemTupleEqualElem