4D v12.4Vergleichsoperatoren |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
4D v12.4
Vergleichsoperatoren
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Operation | Syntax | Ergibt | Ausdruck | Wert |
| Gleichheit | String = String | Boolean | "abc" = "abc" | True |
| "abc" = "abd" | False | |||
| Ungleichheit | String # String | Boolean | "abc" # "abd" | True |
| "abc" # "abc" | False | |||
| Größer als | String > String | Boolean | "abd" > "abc" | True |
| "abc" > "abc" | False | |||
| Kleiner als | String < String | Boolean | "abc" < "abd" | True |
| "abc" < "abc" | False | |||
| Größer als oder gleich | String >= String | Boolean | "abd" >= "abc" | True |
| "abc" >= "abd" | False | |||
| Kleiner als oder gleich | String <= String | Boolean | "abc" <= "abd" | True |
| "abd" <= "abc" | False | |||
| Enthält Schlüsselwort | String % String | Boolean | "Alpha Bravo" % "Bravo" | True |
| "Alpha Bravo" % "ravo" | False |
Hinweis: Weitere Informationen dazu finden Sie am Ende dieses Abschnitts.
| Operation | Syntax | Ergibt | Ausdruck | Wert |
| Gleichheit | Zahl = Zahl | Boolean | 10 = 10 | True |
| 10 = 11 | False | |||
| Ungleichheit | Zahl # Zahl | Boolean | 10 #11 | True |
| 10 # 10 | False | |||
| Größer als | Zahl > Zahl | Boolean | 11 > 10 | True |
| 10 > 11 | False | |||
| Kleiner als | Zahl < Zahl | Boolean | 10 < 11 | True |
| 11 < 10 | False | |||
| Größer als oder gleich | Zahl >= Zahl | Boolean | 11 >= 10 | True |
| 10 >= 11 | False | |||
| Kleiner als oder gleich | Zahl <= Zahl | Boolean | 10 <= 11 | True |
| 11 <= 10 | False |
| Operation | Syntax | Ergibt | Ausdruck | Wert |
| Gleichheit | Datum = Datum | Boolean | !1.1.97! =!1.1.97! | True* |
| !20.1.97! =!1.1.97! | False | |||
| Ungleichheit | Datum # Datum | Boolean | !20.1.97! # !1.1.97! | True |
| !1.1.97! # !1.1.97! | False | |||
| Größer als | Datum > Datum | Boolean | !20.1.97! > !1.1.97! | True |
| !1.1.97! > !1.1.97! | False | |||
| Kleiner als | Datum < Datum | Boolean | !1.1.97! < !20.1.97! | True |
| !1.1.97! < !1.1.97! | False | |||
| Größer als oder gleich | Datum >= Datum | Boolean | !20.1.97! >=!1.1.97! | True |
| !1.1.97!>=!20.1.97! | False | |||
| Kleiner als oder gleich | Datum <= Datum | Boolean | !1.1.97!<=!20.1.97! | True |
| !20.1.97!<=!1.1.97! | False |
| Operation | Syntax | Ergibt | Ausdruck | Wert |
| Gleichheit | Zeit = Zeit | Boolean | ?01:02:03? = ?01:02:03? | True |
| ?01:02:03? = ?01:02:04? | False | |||
| Ungleichheit | Zeit # Zeit | Boolean | ?01:02:03? # ?01:02:04? | True |
| ?01:02:03? # ?01:02:03? | False | |||
| Größer als | Zeit > Zeit | Boolean | ?01:02:04? > ?01:02:03? | True |
| ?01:02:03? > ?01:02:03? | False | |||
| Kleiner als | Zeit < Zeit | Boolean | ?01:02:03? < ?01:02:04? | True |
| ?01:02:03? < ?01:02:03? | False | |||
| Größer als oder gleich | Zeit >= Zeit | Boolean | ?01:02:03? >=?01:02:03? | True |
| ?01:02:03? >=?01:02:04? | False | |||
| Kleiner als oder gleich | Zeit <= Zeit | Boolean | ?01:02:03? <=?01:02:03? | True |
| ?01:02:04? <=?01:02:03? | False |
Bei Zeigern sind nur die Operatoren gleich und ungleich möglich: Wenn gilt
` vPtrA und vPtrB zeigen auf das gleiche Objekt
vPtrA:=->EinObjekt
vPtrB:=->EinObjekt
` vPtrC zeigt auf ein anderes Objekt
vPtrC:=->ein anderes Objektergibt sich folgendes:
| Operation | Syntax | Ergibt | Ausdruck | Wert |
| Gleichheit | Zeiger = Zeiger | Boolean | vPtrA = vPtrB | True |
| vPtrA = vPtrC | False | |||
| Ungleichheit | Zeiger # Zeiger | Boolean | vPtrA # vPtrC | True |
| vPtrA # vPtrB | False |
Beachten Sie folgende Regeln:
Character code("A")=Character code("a") ` da 65 ungleich 97 ist "Muller"="Müller"
"u"="Ü"
"A"="ä","à","â"
` usw. "Alpha Bravo Charlie"%"Bravo" ` Gibt Wahr zurück
"Alpha Bravo Charlie"%"vo" ` Gibt Falsch zurück
"Alpha Bravo Charlie"%"Alpha Bravo" ` Gibt Falsch zurück
"Alpha,Bravo,Charlie"%"Alpha" ` Gibt Wahr zurück
"Software und Computer"%"comput@" ` Gibt Wahr zurückHinweis: Weitere Informationen zu den Regeln bei Schlüsselwörtern finden Sie unter http://www.unicode.org/unicode/reports/tr29/#Word_Boundaries
"abcdefghij"="abc@"Sie können das Jokerzeichen nur für den zweiten Operanden (der String auf der rechten Seite) einsetzen. Demnach ergibt folgender Ausdruck FALSE, da @ im ersten Operanden lediglich als 1 Zeichen gewertet wird:
Das Jokerzeichen kann ein Zeichen, viele Zeichen oder gar kein Zeichen ersetzen. Demnach ergeben folgende Ausdrücke TRUE:
"abcdefghij"="abcdefghij@"
"abcdefghij"="@abcdefghij"
"abcdefghij"="abcd@efghij"
"abcdefghij"="@abcdefghij@"
"abcdefghij"="@abcde@fghij@"Zwei aufeinanderfolgende Jokerzeichen werden dagegen nicht erkannt. Hier gibt der Ausdruck FALSE zurück:
"abcdefghij"="abc@@fg"Enthält der Vergleichsoperator ein < oder > Zeichen, wird nur der Vergleich mit einem Joker am Ende des Operanden unterstützt:
"abcd"<="abc@j" `Gültiger Vergleich
"abcd"="abc@ef" `Ungültiger VergleichHinweise:
Wollen Sie Vergleiche oder Suchläufe mit @ als Zeichen, also nicht als Joker durchführen, gibt es zwei Möglichkeiten:
Produkt: 4D
Thema: Operatoren
Bildoperatoren
Bit Operatoren
Boolean Operatoren
Datumsoperatoren
Numerische Operatoren
Operatoren
Zeitoperatoren