KlassenKlassenKlassenKlassen | | | | Operatoren

tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr (Operator)

Name

tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr — Vorwärtssuchen nach einem Zeichen in einem Tupel von Strings.

Signatur

tuple_strchr( : : String, ToFind : Position)

Herror tuple_strchr(const char* String, const char* ToFind, Hlong* Position)

Herror T_tuple_strchr(const Htuple String, const Htuple ToFind, Htuple* Position)

Herror tuple_strchr(const HTuple& String, const HTuple& ToFind, Hlong* Position)

Herror tuple_strchr(const HTuple& String, const HTuple& ToFind, HTuple* Position)

void TupleStrchr(const HTuple& String, const HTuple& ToFind, HTuple* Position)

HTuple HTuple::TupleStrchr(const HTuple& ToFind) const

void HOperatorSetX.TupleStrchr(
[in] VARIANT String, [in] VARIANT ToFind, [out] VARIANT* Position)

VARIANT HTupleX.TupleStrchr(
[in] VARIANT String, [in] VARIANT ToFind)

static void HOperatorSet.TupleStrchr(HTuple stringVal, HTuple toFind, out HTuple position)

HTuple HTuple.TupleStrchr(HTuple toFind)

Beschreibung

tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr sucht in dem Eingabetupel StringStringStringStringStringstringVal nach den in dem Eingabetupel ToFindToFindToFindToFindToFindtoFind definierten Zeichen. Beide Eingabetupel müssen durchgehend aus Strings bestehen. Anderenfalls bricht tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr mit einem entsprechenden Fehler ab. Enthalten die Strings von ToFindToFindToFindToFindToFindtoFind mehr als ein Zeichen, so wird ausschließlich das erste Zeichen in einem String berücksichtigt und alle folgenden Zeichen ignoriert. Besteht StringStringStringStringStringstringVal nur aus einem einzigen String, so werden in diesem alle in ToFindToFindToFindToFindToFindtoFind definierten Zeichen gesucht. Das Ausgabetupel besteht also in diesem Fall aus genauso vielen Elementen wie das Eingabetupel ToFindToFindToFindToFindToFindtoFind. Ist die Suche nach einem Zeichen erfolgreich, so wird die Position (beginnend mit 0 für das erste Zeichen eines Strings), an der das Zeichen das erste Mal innerhalb des untersuchten Strings gefunden wurde, in dem Ausgabetupel PositionPositionPositionPositionPositionposition zurückgegeben. Wurde ein Zeichen nicht gefunden, so wird für dessen Position der Wert -1 zurückgegeben. Enthalten beide Eingabetupel StringStringStringStringStringstringVal und ToFindToFindToFindToFindToFindtoFind gleich viele Elemente, so werden sie elementweise bearbeitet, das heißt, das erste Zeichen im ersten Element von ToFindToFindToFindToFindToFindtoFind wird in dem ersten String von StringStringStringStringStringstringVal, das erste Zeichen des zweiten ELements von ToFindToFindToFindToFindToFindtoFind wird im zweiten String von StringStringStringStringStringstringVal gesucht und so weiter. Die einzelnen Elemente des Ausgabetupels enthalten dann das Resultat der elementweisen Suche. Besteht ToFindToFindToFindToFindToFindtoFind nur aus einem Element, so wird das dort definierte Zeichen in allen Strings des Eingabetupels StringStringStringStringStringstringVal gesucht. Das Ausgabetupel PositionPositionPositionPositionPositionposition besitzt dann also genauso viele Elemente wie das Eingabetupel StringStringStringStringStringstringVal. Weisen die beiden Eingabetupel StringStringStringStringStringstringVal und ToFindToFindToFindToFindToFindtoFind eine unterschiedliche Anzahl an Elementen auf, die von 1 verschieden ist, so bricht tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr mit einem entsprechenden Fehler ab.

Sonderfall: Leere Eingabetupel

Falls eines oder beide der Eingabetupel leer sind, gibt der Operator ein leeres Tupel zurück.

HDevelop Inline-Operation

HDevelop unterstützt eine Inline-Operation für tuple_strchrtuple_strchrTupleStrchrtuple_strchrTupleStrchrTupleStrchr, die innerhalb eines Ausdrucks in der folgenden Syntax verwendet werden kann:

Position := strchr(String, ToFind)

Parallelisierung

Parameter

StringStringStringStringStringstringVal (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Eingabetupel mit zu untersuchenden Strings.

ToFindToFindToFindToFindToFindtoFind (input_control)  string(-array) HTupleHTupleHTupleVARIANTHtuple (string) (string) (HString) (char*) (BSTR) (char*)

Eingabetupel mit zu suchenden Zeichen.

PositionPositionPositionPositionPositionposition (output_control)  integer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Positionen der gesuchten Zeichen in den untersuchten Strings.

Alternativen

tuple_strrchrtuple_strrchrTupleStrrchrtuple_strrchrTupleStrrchrTupleStrrchr, tuple_strstrtuple_strstrTupleStrstrtuple_strstrTupleStrstrTupleStrstr, tuple_strrstrtuple_strrstrTupleStrrstrtuple_strrstrTupleStrrstrTupleStrrstr, tuple_strlentuple_strlenTupleStrlentuple_strlenTupleStrlenTupleStrlen, tuple_substrtuple_substrTupleSubstrtuple_substrTupleSubstrTupleSubstr, tuple_str_first_ntuple_str_first_nTupleStrFirstNtuple_str_first_nTupleStrFirstNTupleStrFirstN, tuple_str_last_ntuple_str_last_nTupleStrLastNtuple_str_last_nTupleStrLastNTupleStrLastN, tuple_splittuple_splitTupleSplittuple_splitTupleSplitTupleSplit, tuple_environmenttuple_environmentTupleEnvironmenttuple_environmentTupleEnvironmentTupleEnvironment

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren