Op deze pagina

Operatoren en prioriteit

ProcessMind-expressies ondersteunen verschillende operatoren voor rekenkundige berekeningen, vergelijkingen en logische bewerkingen.

Operatoren

Rekenkundige operatoren

Symbool Name Beschrijving Voorbeeld Resultaat
+ Optellen Telt twee getallen op of voegt strings samen 5 + 3 8
- Aftrekken Trekt het tweede getal af van het eerste 10 - 4 6
* Vermenigvuldigen Vermenigvuldigt twee getallen 6 * 7 42
/ Delen Deelt het eerste getal door het tweede 15 / 3 5

Vergelijkingsoperatoren

Symbool Name Beschrijving Voorbeeld Resultaat
== Gelijk aan Controleert of twee waarden gelijk zijn Status == "Active" true of false
!= Niet gelijk aan Controleert of twee waarden niet gelijk zijn Status != "Deleted" true of false
< Kleiner dan Controleert of de eerste waarde kleiner is dan de tweede Amount < 100 true of false
> Groter dan Controleert of de eerste waarde groter is dan de tweede Amount > 1000 true of false
<= Kleiner dan of gelijk aan Controleert of de eerste waarde kleiner dan of gelijk aan de tweede is Count <= 10 true of false
>= Groter dan of gelijk aan Controleert of de eerste waarde groter dan of gelijk aan de tweede is Score >= 80 true of false
in In lijst Controleert of een waarde in een lijst met waarden voorkomt Status in ["A", "B", "C"] true of false

Logische operatoren

Symbool Name Beschrijving Voorbeeld Resultaat
&& Logische AND Geeft true terug als beide voorwaarden waar zijn Amount > 100 && Status == "Active" true of false
and Logische AND (trefwoord) Alias voor &&. Geeft true terug als beide voorwaarden waar zijn Amount > 100 and Status == "Active" true of false
|| Logische OR Geeft true terug als ten minste één voorwaarde waar is Priority == "High" || Urgent == true true of false
or Logische OR (trefwoord) Alias voor ||. Geeft true terug als ten minste één voorwaarde waar is Priority == "High" or Urgent == true true of false
! Logische NOT Keert een booleanwaarde om !IsDeleted true of false
not Logische NOT (trefwoord) Alias voor !. Keert een booleanwaarde om not IsDeleted true of false

Prioriteit

Operatoren met een hogere prioriteit worden eerst geëvalueerd. Met haakjes kun je de standaardprioriteit aanpassen.

Prioriteit Category Operatoren Associativity
1 Logische OR || , or Van links naar rechts
2 Logische AND && , and Van links naar rechts
3 Gelijkheid == , != Van links naar rechts
4 Vergelijking < , > , <= , >= , in Van links naar rechts
5 Optellen/aftrekken + , - Van links naar rechts
6 Vermenigvuldigen/delen * , / Van links naar rechts
7 Unaire operator ! , not , - Van rechts naar links
8 Functieaanroep () Van links naar rechts
9 Haakjes ( )

Opmerkingen over operatoren

  • Tekenreeksen samenvoegen met +: de +-operator voegt ook tekenreeksen samen als een van de operanden een tekenreeks is:

    "Hello" + " " + "World""Hello World"
  • De in-operator is gelijk aan meerdere OR-vergelijkingen:

    Status in ["Pending", "Active", "Review"]
    // is the same as:
    Status == "Pending" || Status == "Active" || Status == "Review"

Voorbeelden

  • Voorwaarden combineren:

    // Both conditions must be true
    Amount > 1000 && Region == "Europe"
    
    // At least one condition must be true  
    Priority == "High" or Escalated == true
    
    // Negation
    not IsArchived

Ternary-operator

De ternary-operator is een korte notatie voor eenvoudige if/else-logica:

  • Syntax:

    condition ? valueIfTrue : valueIfFalse
  • Voorbeeld:

    Amount > 1000 ? "High" : "Low"
  • Gelijk aan:

    if(Amount > 1000, "High", "Low")

Voorbeelden van prioriteit

  • Zonder haakjes:

    2 + 3 * 414  (multiplication first)
    10 > 5 && 3 < 7true  (comparisons before AND)
  • Met haakjes:

    (2 + 3) * 420  (addition first)

Speciale syntax

  • Geciteerde identifiers: als een kolomnaam spaties of speciale tekens bevat, gebruik je backticks:

    `Order Amount` * 0.1
    `Customer Name`
    `2024 Revenue`
  • Tekens escapen: gebruik een backslash om speciale tekens in tekenreeksen te escapen:

    "Line 1\nLine 2"     // newline
    "Tab\there"          // tab
    "Say \"Hello\""      // double quote
    "Path\\to\\file"     // backslash
  • Null-waarden: gebruik null voor ontbrekende waarden:

    if(Department == null, "Unknown", Department)

    Of gebruik de functie isNull():

    if(isNull(Department), "Unknown", Department)

Gerelateerde onderwerpen