prevnext   » Startseite » Haupt-Referenz » Funktions-Referenz » compareMid()

compareMid()

Eine Zeichenkette mit einem Mittelstück gleicher Länge aus einer anderen Zeichenkette vergleichen.

Syntax:

int32 compareMid ( source, source_pos, cmp )
int32 compareMid ( source, source_pos, cmp, mode_bits )

Parameter:

source Der Parameter wird zwangsweise mittels string() in eine Zeichenkette gewandelt.
cmp Der Parameter wird zwangsweise mittels string() in eine Zeichenkette gewandelt.
options Bitmaske mit Optionen für den Vergleich, wobei hier nur die Bits _COMP_LEX und _COMP_RESULT_IDENT ausgewertet werden. Der Parameter wird zwangsweise mittels int32() in eine 32-Bit-Ganzzahl gewandelt. Ist Bit _COMP_LEX gesetzt, dann wird für den Vergleich die Funktion cmpLex() aufgerufen. Ist das Bit _COMP_RESULT_IDENT, dann wird bei Ungleichheit die Länge der identischen Zeichen als Funfktionsergebnis geliefert.Weitere Details unter cmp().

Beschreibung:

Zuerst wird die Quelle source virtuell auf die Länge der 2. Quelle cmp gekürzt, so dass die ersten Zeichen ab Position source_pos vorhanden bleiben. Dieser gekürzte Text, der auch kürzer als cmp sein kann, wird mittels cmp(extract,cmp,options) verglichen.

Funktionsergebnis:   INT32

Ist die aus source extrahierte Teilzeichenkette (im weiteren extract genannt) und cmp identisch, dann wird 0 als Ergebnis geliefert. Ist die extract<cmp, dann wird -1 als Ergebnis geliefert. Andernfalls ist extract>cmp und es wird +1 als Ergebnis geliefert.

Ist dagegen im Parameter options das Bit _COMP_RESULT_IDENT gesetzt, dann wird bei Ungleichheit die Anzahl der identischen Zeichen + _CMP_STR_LEN_ADD geliefert. Das Vorzeichen des Ergebnisses ist negativ, falls extract<cmp.

Siehe auch:
 compareMidEQ()   compareLeft()   compareRight() 

Weitere ähnliche Funktionen:

Vergleiche
Funktion Kurzinfo
cmp() Zwei Parameter miteinander vergleichen.
cmpEQ() Zwei Parameter miteinander auf Identität vergleichen.
cmpLex() Zwei Parameter miteinander vergleichen und Zeichenketten dabei lexikalisch verglecihen.
compareFile() Eine Datei mit lokalen Daten vergleichen.
compareFiles() Den Inhalt zweier Dateien vergleichen.
compareFilesEx() Einen Ausschnitt des Inhaltes zweier Dateien vergleichen.
compareLeft() Eine Zeichenkette mit dem Anfang gleicher Länge aus einer anderen Zeichenkette vergleichen.
compareLeftEQ() Eine Zeichenkette mit dem Anfang gleicher Länge aus einer anderen Zeichenkette auf Gleichkeit untersuchen.
compareMid() Eine Zeichenkette mit einem Mittelstück gleicher Länge aus einer anderen Zeichenkette vergleichen.
compareMidEQ() Eine Zeichenkette mit einem Mittelstück gleicher Länge aus einer anderen Zeichenkette auf Gleichkeit untersuchen.
compareRight() Eine Zeichenkette mit dem Ende gleicher Länge aus einer anderen Zeichenkette vergleichen.
compareRightEQ() Eine Zeichenkette mit dem Ende gleicher Länge aus einer anderen Zeichenkette auf Gleichkeit untersuchen.