Die Funktion $cmp vergleicht zwei Werte miteinander und gibt als Ergebnis einen Wahrheitswert zurück. Ein Vergleichsoperator gibt dabei an, wie die Werte miteinander verglichen werden.
Tooltip
Syntax: $cmp(left,operator,right[,mode])
Parameter
Beschreibung
leftDer linke Vergleichswert
operatorDefiniert den Vergleichsoperator. Folgende Operatoren stehen zur Verfügung:
= oder == (gleich)
!= (ungleich)
< (kleiner)
<= (kleiner oder gleich)
> (größer)
>= (größer oder gleich)
reg (Regulärer Ausdruck)
rightDer rechte Vergleichswert
modeEin optionaler Vergleichsmodus, welcher angibt, ob der Vergleich numerisch oder Text basiert durchgeführt werden soll.
Folgende Modi stehen zur Verfügung:
i (Ganzzahl)
n (numerisch)
s (Text basiert) → Standard, wenn nichts angegeben wird
o (Objekt basiert) → z.B. wenn zwei Datumswerte verglichen werden sollen oder ein Aufzählungswert mit einem Textwert
Gibt true zurück, wenn die Bedingung für den Vergleich "left operator right" erfüllt ist, ansonsten false.
Beispiel: $cmp(10,>,5) - Liefert true, da 10 größer als 5
Syntax
$cmp(left,operator,right[,mode])
Parameter
Name | Beschreibung |
|---|---|
left | Der linke Vergleichswert |
operator | Definiert den Vergleichsoperator. Folgende Operatoren stehen zur Verfügung:
|
right | Der rechte Vergleichswert |
mode | Ein optionaler Vergleichsmodus, welcher angibt, ob der Vergleich numerisch oder Text basiert durchgeführt werden soll. Folgende Modi stehen zur Verfügung:
|
Rückgabewert
Gibt true zurück, wenn die Bedingung für den Vergleich "left operator right" erfüllt ist, ansonsten false.
Beispiel
Syntax | Ergebnis | Bemerkung |
|---|---|---|
$cmp(2,>,11,n) | false | Die Zahl 2 ist nicht größer als die Zahl 11 |
$cmp(2,>,11,s) | true | Bei einem Text basierten Vergleich ist "2" größer als "11", da der ASCII Zeichencode von '2' größer ist als der von '1'. |
$cmp(2,>,11) | true | Selbe Begründung wie oben. s ist der Standardmodus |
$cmp(0,==,0) | true | |
$cmp(Hallo,==,Hallo) | true | |
$cmp(hallo,==,Hallo) | false | Case sensitiv |
$cmp(Hallo,reg,/^hallo$/i) | true | Regulärer vergleich Case insensitiv |
$cmp($input,=,ACCEPTED,o) | Gibt true zurück, wenn $input dem Arbeitsstatuswert ACCEPTED entspricht. |