Cette rubrique décrit la syntaxe, les paramètres et les exemples des fonctions d'opérateur.
Fonctions
Pour utiliser une valeur négative, utilisez la fonction op_neg(valeur positive). Par exemple, pour représenter -1, utilisez op_neg(1).
Type | Fonction | Description |
Fonctions conditionnelles | Renvoie la valeur d'une expression en fonction d'une condition. | |
Renvoie la valeur de la première expression qui n'est pas None. | ||
Renvoie None si l'expression 1 est égale à l'expression 2. Sinon, renvoie la valeur de l'expression 1. | ||
Effectue une opération logique AND. Renvoie True si toutes les valeurs des paramètres sont vraies. | ||
Effectue une opération logique NOT. Renvoie la valeur booléenne inverse du paramètre. | ||
Effectue une opération logique OR. Renvoie True si au moins une valeur de paramètre est vraie. Renvoie False si toutes les valeurs des paramètres sont fausses. | ||
Comparaison | Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | |
Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | ||
Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | ||
Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | ||
Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | ||
Vérifie si Les types de a et b doivent être identiques, par exemple chaîne, nombre ou liste. | ||
Détermination du conteneur | Calcule le nombre de caractères dans une chaîne de texte. Cette fonction peut être utilisée pour les chaînes et autres expressions qui renvoient un tuple, une liste ou un dictionnaire. | |
Vérifie si une chaîne, un tuple, une liste ou un dictionnaire contient un élément spécifique. Renvoie True ou False. | ||
Vérifie si une chaîne, un tuple, une liste ou un dictionnaire ne contient pas un élément spécifique. Renvoie True ou False. | ||
Extrait une sous-chaîne d'une chaîne, d'un tableau ou d'un tuple spécifié. | ||
Renvoie un élément d'une chaîne, d'un tableau ou d'un tuple en fonction de son index. | ||
Fonctions polyvalentes multivaluées | Calcule la somme de plusieurs valeurs, telles que des chaînes ou des nombres. | |
Renvoie la valeur maximale parmi plusieurs champs ou expressions numériques. | ||
Renvoie la valeur minimale parmi plusieurs champs ou expressions numériques. |
op_if
Renvoie la valeur d'une expression en fonction d'une condition.
-
Syntaxe
op_if(condition, expression1, expression2) -
Paramètres
Paramètre
Type de paramètre
Obligatoire
Description
condition
Tout type
Oui
Condition à évaluer. Si la condition n'est pas une valeur booléenne, sa véracité est évaluée. Pour plus d'informations, consultez la section Évaluation de la véracité.
expression1
Tout type
Oui
Valeur à renvoyer si la condition est True.
expression2
Tout type
Oui
Valeur à renvoyer si la condition est False.
-
Réponse
La valeur de l'expression correspondante.
-
Exemples
-
Exemple 1 : Si le champ
contentest évalué comme True, la valeur de l'expression1 est attribuée au champtest_if.-
Journal brut
content: hello -
Règle de transformation
e_set("test_if", op_if(v("content"),"still origin content","replace this")) -
Résultat
content: hello test_if: still origin content
-
-
Exemple 2 : Si le champ
contentest évalué comme False, la valeur de l'expression2 est attribuée au champtest_if.-
Journal brut
content: 0 -
Règle de transformation
e_set("test_if", op_if(ct_int(v("content", default=0)),"still origin content","replace this")) -
Résultat
content: 0 test_if: replace this
-
-
op_ifnull
Renvoie la valeur de la première expression qui n'est pas None.
-
Syntaxe
op_ifnull(expression1, expression2, ....) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
expression1
Tout type
Oui
Expression 1.
expression2
Tout type
Oui
Expression 2.
-
Réponse
La valeur de la première expression qui n'est pas None.
-
Exemples
-
Exemple 1 :
-
Journal brut
test_if: hello escape_name: Etl -
Règle de transformation
e_set("test_ifnull", op_ifnull(v("escape_name"),v("test_if"))) -
Résultat
test_if: hello escape_name: Etl test_ifnull: Etl
-
-
Exemple 2 :
-
Journal brut
test_if: hello escape_name: Etl -
Règle de transformation
e_set("test_ifnull", op_ifnull(v("test_if"),v("escape_name"))) -
Résultat
test_if: hello escape_name: Etl test_ifnull: hello
-
-
op_coalesce
Renvoie la valeur de la première expression qui n'est pas None.
Les paramètres et les exemples de cette fonction sont similaires à ceux de la fonction op_ifnull. Pour plus d'informations, consultez la section op_ifnull.
op_nullif
Renvoie None si l'expression 1 est égale à l'expression 2. Sinon, renvoie la valeur de l'expression 1.
-
Syntaxe
op_nullif(expression1, expression2) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
expression1
Tout type
Oui
Expression 1.
expression2
Tout type
Oui
Expression 2.
-
Réponse
Renvoie None si l'expression 1 et l'expression 2 sont égales. Sinon, renvoie la valeur de l'expression 1.
-
Exemples
-
Exemple 1 :
-
Journal brut
content: hello escape_name: Etl -
Règle de transformation
e_set("test_ifnull", op_nullif(v("content"),v("escape_name"))) -
Résultat
content: hello escape_name: Etl test_nullif: hello
-
-
Exemple 2 :
-
Journal brut
content: hello escape_name: hello -
Règle de transformation
e_set("test_ifnull", op_nullif(v("content"),v("escape_name"))) -
Résultat
# Because the value of content is the same as the value of escape_name, no value is returned to the test_ifnull field. content: hello escape_name: hello
-
-
op_and
Effectue une opération logique AND sur des valeurs de tout type. Renvoie True si toutes les valeurs des paramètres sont vraies.
-
Syntaxe
op_and(value1, value2, ...) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Tout type
Oui
Valeur 1.
value2
Tout type
Oui
Valeur 2.
-
Réponse
Renvoie True si toutes les valeurs des paramètres sont vraies.
Les valeurs de tout type sont évaluées selon leur véracité. Pour plus d'informations, consultez la section Évaluation de la véracité.
-
Exemples
-
Exemple 1 :
-
Journal brut
number1: 123 number2: 234 -
Règle de transformation
e_set("op_and", op_and(v("number1"),v("number2"))) -
Résultat
number1: 123 number2: 234 op_and: True
-
-
Exemple 2 :
-
Journal brut
number1: 0 number2: 234 -
Règle de transformation
e_set("op_and", op_and(v("number1"),v("number2"))) -
Résultat
number1: 0 number2: 234 op_and: True
-
-
Exemple 3 :
-
Journal brut
ctx1: False ctx2: 234 -
Règle de transformation
e_set("op_and", op_and(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: False ctx2: 234 op_and: False
-
-
Exemple 4 :
-
Journal brut
ctx1: True ctx2: 234 -
Règle de transformation
e_set("op_and", op_and(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: True ctx2: 234 op_and: True
-
-
op_not
Effectue une opération NON logique sur une valeur de n'importe quel type. Renvoie la valeur booléenne inverse de l'expression.
-
Syntaxe
op_not(expression) -
Paramètres
Parameter
Parameter Type
Required
Description
expression
Any
Yes
L'expression.
-
Réponse
La valeur booléenne inverse de l'expression.
Les valeurs de tout type sont évaluées selon leur vérité. Pour plus d'informations, consultez Évaluation de la vérité.
-
Exemples
-
Exemple 1 :
-
Journal brut
ctx1: True -
Règle de transformation
e_set("op_not", op_not(v("ctx1"))) -
Résultat
ctx1: True op_not: False
-
-
Exemple 2 :
-
Journal brut
ctx1: 345 -
Règle de transformation
e_set("op_not", op_not(v("ctx1"))) -
Résultat
ctx1: 345 op_not: False
-
-
Exemple 3 :
-
Journal brut
ctx1: 0 -
Règle de transformation
e_set("op_not", op_not(ct_int(v("ctx1")))) -
Résultat
ctx1: 0 op_not: True
-
-
Exemple 4 :
-
Journal brut
ctx1: ETL -
Règle de transformation
e_set("op_not", op_not(v("ctx1"))) -
Résultat
ctx1: ETL op_not: False
-
-
Exemple 5 :
-
Journal brut
ctx1: None -
Règle de transformation
e_set("op_not", op_not(v("ctx1"))) -
Résultat
ctx1: None op_not: True
-
-
op_or
Effectue une opération OU logique sur des valeurs de n'importe quel type. Renvoie True si au moins une expression est vraie. Renvoie False si toutes les expressions sont fausses.
-
Syntaxe
op_or(expression1, expression2, ...) -
Paramètres
Parameter Name
Parameter Type
Required
Description
expression1
Any
Yes
Expression 1.
expression2
Any
Yes
Expression 2.
-
Réponse
Renvoie True si au moins une expression est vraie. Renvoie False si toutes les expressions sont fausses.
Les valeurs de tout type sont évaluées selon leur vérité. Pour plus d'informations, consultez Évaluation de la vérité.
-
Exemples
-
Exemple 1 :
-
Journal brut
ctx1: 123 ctx2: 234 -
Règle de transformation
e_set("op_or", op_or(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: 123 ctx2: 234 op_or: True
-
-
Exemple 2 :
-
Journal brut
ctx1: 0 ctx2: 234 -
Règle de transformation
e_set("op_or", op_or(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: 0 ctx2: 234 op_or: True
-
-
Exemple 3 :
-
Journal brut
ctx1: ETL ctx2: ALIYUN -
Règle de transformation
e_set("op_or", op_or(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: ETL ctx2: ALIYUN op_or: True
-
-
Exemple 4 :
-
Journal brut
ctx1: True ctx2: False -
Règle de transformation
e_set("op_or", op_or(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: True ctx2: False op_or: True
-
-
Exemple 5 :
-
Journal brut
ctx1: 0 ctx2: False -
Règle de transformation
e_set("op_or", op_or(ct_int(v("ctx1")),v("ctx2"))) -
Résultat
ctx1: 0 ctx2: False op_or: False
-
-
Exemple 6 :
-
Journal brut
ctx1: 124 ctx2: True -
Règle de transformation
e_set("op_or", op_or(v("ctx1"),v("ctx2"))) -
Résultat
ctx1: 124 ctx2: True op_or: True
-
-
op_eq
Vérifie si a==b. Renvoie True ou False.
-
Syntaxe
op_eq(value1, value2) -
Paramètres
Parameter Name
Parameter type
Required
Description
value1
Any
Yes
Valeur 1.
value2
La valeur doit être identique à la valeur 1.
Yes
Valeur 2.
-
Réponse
Renvoie True si value1 est égal à value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 :
-
Journal brut
content: hello ctx: hello -
Règle de transformation
e_set("test_eq", op_eq(v("content"),v("ctx"))) -
Résultat
content: hello ctx: hello test_eq: True
-
-
Exemple 2 :
-
Journal brut
content: hello ctx: ctx -
Règle de transformation
e_set("test_eq", op_eq(v("content"),v("ctx"))) -
Résultat
content: hello ctx: ctx test_eq: False
-
-
op_ge
Vérifie si a>=b. Renvoie True ou False.
-
Syntaxe
op_ge(value1, value2) -
Paramètres
Parameter name
Parameter type
Required
Description
value1
Any
Yes
Valeur 1.
value2
Doit être du même type que value1
Yes
Valeur 2.
-
Réponse
Renvoie True si value1 est supérieur ou égal à value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 : vérifie si la valeur de apple_price est supérieure ou égale à la valeur de orange_price.
-
Journal brut
apple_price: 16 orange_price: 14 -
Règle de transformation
e_set("test_ge", op_ge(ct_int(v("apple_price")),ct_int(v("orange_price")))) -
Résultat
apple_price: 16 orange_price: 14 test_ge: True
-
-
Exemple 2 : si la valeur de apple_price est inférieure à la valeur de orange_price, l'expression renvoie False.
-
Journal brut
apple_price: 12 orange_price: 14 -
Règle de transformation
e_set("test_ge", op_ge(ct_int(v("apple_price")),ct_int(v("orange_price")))) -
Résultat
apple_price: 12 orange_price: 14 test_ge: False
-
-
op_gt
Vérifie si a>b. Renvoie True ou False.
-
Syntaxe
op_gt(value1, value2) -
Paramètres
Parameter Name
Parameter Type
Required
Description
value1
Any
Yes
Valeur 1.
value2
La valeur doit correspondre à la valeur 1.
Yes
Valeur 2.
-
Réponse
Renvoie True si value1 est supérieur à value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 : vérifie si la valeur de old_number est supérieure à la valeur de young_number.
-
Journal brut
old_number: 16 young_number: 14 -
Règle de transformation
e_set("op_gt",op_gt(ct_int(v("old_number")),ct_int(v("young_number")))) -
Résultat
old_number: 16 young_number: 14 test_ge: True
-
-
Exemple 2 : vérifie si la valeur de priority est supérieure à la valeur de price.
-
Journal brut
priority: 14 price: 16 -
Règle de transformation
e_set("op_gt",op_gt(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 14 price: 16 test_ge: False
-
-
op_le
Vérifie si a<=b. Renvoie True ou False.
-
Syntaxe
op_le(value1, value2) -
Paramètres
Parameter Name
Type
Required
Description
value1
Any
Yes
Valeur 1.
value2
La valeur doit être 1.
Yes
Valeur 2.
-
Réponse
Renvoie True si value1 est inférieur ou égal à value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 : vérifie si la valeur de priority est inférieure ou égale à la valeur de price.
-
Journal brut
priority: 16 price: 14 -
Règle de transformation
e_set("op_le",op_le(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 16 price: 14 test_ge: False
-
-
Exemple 2 : renvoie True si la priorité est inférieure ou égale au prix, ou False dans le cas contraire.
-
Journal brut
priority: 14 price: 16 -
Règle de transformation
e_set("op_le",op_le(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 14 price: 16 test_ge: True
-
-
op_lt
Vérifie si a<b. Renvoie True ou False.
-
Syntaxe
op_lt(value1, value2) -
Paramètres
Parameter
Parameter type
Required
Description
value1
Any
Yes
Valeur 1.
value2
Doit être du même type que value1
Yes
Valeur 2.
-
Réponse
Renvoie True si value1 est inférieur à value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 : renvoie True si la valeur de priority est inférieure à celle de price, et False dans le cas contraire.
-
Journal brut
priority: 16 price: 14 -
Règle de transformation
e_set("op_lt",op_lt(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 16 price: 14 op_lt: False
-
-
Exemple 2 : vérifie si la valeur de priority est inférieure à la valeur de price.
-
Journal brut
priority: 14 price: 15 -
Règle de transformation
e_set("op_lt",op_lt(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 14 price: 15 op_lt: True
-
-
op_ne
Vérifie si a!=b. Renvoie True ou False.
-
Syntaxe
op_ne(value1, value2) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Tout type
Oui
Première valeur.
value2
La valeur doit être du même type que value1.
Oui
Deuxième valeur.
-
Réponse
Renvoie True si value1 est différent de value2. Sinon, renvoie False.
-
Exemples
-
Exemple 1 :
-
Journal brut
priority: 16 price: 14 -
Règle de transformation
e_set("op_ne",op_ne(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 16 price: 14 op_ne: True
-
-
Exemple 2 :
-
Journal brut
priority: 14 price: 14 -
Règle de transformation
e_set("op_ne",op_ne(ct_int(v("priority")),ct_int(v("price")))) -
Résultat
priority: 14 price: 14 op_ne: False
-
-
op_len
Calcule le nombre de caractères dans une chaîne de texte. Cette fonction peut également être utilisée avec des tuples, des listes et des dictionnaires.
-
Syntaxe
op_len(value) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value
Chaîne, tuple, liste ou dictionnaire
Oui
Valeur à évaluer.
-
Réponse
Longueur du champ.
-
Exemples
-
Journal brut
content: I,love,this,world -
Règle de transformation
e_set("op_len",op_len(v("content"))) -
Résultat
content: I,love,this,world op_len: 17
-
op_in
Vérifie si une chaîne, un tuple, une liste ou un dictionnaire contient un élément spécifique. Renvoie True ou False.
-
Syntaxe
op_in(value1, value2) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Chaîne, tuple, liste ou dictionnaire
Oui
Chaîne, tuple, liste ou dictionnaire.
value2
Tout type
Oui
Élément à évaluer.
RemarqueLe conteneur (chaîne, tuple, liste ou dictionnaire) doit être le premier paramètre et l'élément le second.
-
Réponse
Renvoie True si le conteneur contient l'élément. Sinon, renvoie False.
-
Exemples
-
Journal brut
list: [1, 3, 2, 7, 4, 6] num2: 2 -
Règle de transformation
e_set("op_in",op_in(v("list"),v("num2"))) -
Résultat
list: [1, 3, 2, 7, 4, 6] num2: 2 op_in: True
-
op_not_in
Vérifie si une chaîne, un tuple, une liste ou un dictionnaire ne contient pas un élément spécifique. Renvoie True ou False.
-
Syntaxe
op_not_in(value1, value2) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Chaîne, tuple, liste ou dictionnaire
Oui
Chaîne, tuple, liste ou dictionnaire.
value2
Tout type
Oui
Élément à évaluer.
RemarqueLe conteneur (chaîne, tuple, liste ou dictionnaire) doit être le premier paramètre et l'élément le second.
-
Réponse
Renvoie True si le conteneur ne contient pas l'élément. Sinon, renvoie False.
-
Exemples
-
Journal brut
list: [1, 3, 2, 7, 4, 6] num2: 12 -
Règle de transformation
e_set("op_not_in",op_not_in(v("list"),v("num2"))) -
Résultat
list: [1, 3, 2, 7, 4, 6] num2: 12 op_in: True
-
op_slice
Extrait une sous-chaîne d'une chaîne, d'un tableau ou d'un tuple spécifié.
-
Syntaxe
op_slice(value, start, end=None, step=None) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value
Chaîne
Oui
Valeur à découper.
start
Nombre
Non
Position de départ de l'extraction. Valeur par défaut : 0.
end
Nombre
Non
Position de fin de l'extraction. Le caractère à cette position n'est pas inclus. La valeur par défaut correspond à la fin de la chaîne.
step
Nombre
Non
Longueur de chaque intervalle.
-
Réponse
La valeur renvoyée est la chaîne extraite.
-
Exemples
-
Exemple 1 : extrait le champ « word » sur toute sa longueur avec un pas de 2.
-
Journal brut
word: I,love,this,world -
Règle de transformation
e_set("op_slice",op_slice(v("word"),2)) -
Résultat
word: I,love,this,world op_slice: I,
-
-
Exemple 2 : extrait le champ « word » de la position 2 à la position 9 avec un pas de 1.
-
Journal brut
word: I,love,this,world -
Règle de transformation
e_set("op_slice",op_slice(v("word"),2,9,1)) -
Résultat
word: I,love,this,world op_slice: love,th
-
-
op_index
Renvoie un élément d'une chaîne, d'un tableau ou d'un tuple en fonction de son index.
-
Syntaxe
op_index(value, index) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value
Chaîne
Oui
Chaîne, tableau ou tuple.
index
Nombre
Non
Index dans la chaîne, le tableau ou le tuple d'entrée.
-
Réponse
Élément situé à l'index spécifié.
-
Exemples
-
Exemple 1 : renvoie l'élément à l'index 0 du champ « word ».
-
Journal brut
word: I,love,this,world -
Règle de transformation
e_set("op_index",op_index(v("word"),0)) -
Résultat
word: I,love,this,world op_slice: I
-
-
Exemple 2 : renvoie l'élément à l'index 3 du champ « word ».
-
Journal brut
word: I,love,this,world -
Règle de transformation
e_set("op_index",op_index(v("word"),3)) -
Résultat
word: I,love,this,world op_index: o
-
-
op_add
Additionne plusieurs nombres ou concatène plusieurs chaînes.
-
Syntaxe
op_add(value1, value2, ...) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Chaîne, tuple, liste ou dictionnaire
Oui
Première valeur.
value2
La valeur doit correspondre au type de value1.
Oui
Deuxième valeur.
-
Réponse
Renvoie le résultat de l'addition.
-
Exemples
-
Exemple 1 : calcule la somme de price_orange et price_apple.
-
Journal brut
price_orange: 2 price_apple: 13 -
Règle de transformation
e_set("account",op_add(ct_int(v("price_orange")),ct_int(v("price_apple")))) -
Résultat
price_orange: 2 price_apple: 13 account: 15
-
-
Exemple 2 : calcule la somme de bytes_in et bytes_out.
-
Journal brut
bytes_in: 214 bytes_out: 123 -
Règle de transformation
e_set("total_bytes", op_add(ct_int(v("bytes_in")), ct_int(v("bytes_out")))) -
Résultat
bytes_in: 214 bytes_out: 123 total_bytes: 337
-
-
Exemple 3 : ajoute un préfixe HTTPS à une URL.
-
Journal brut
host: aliyun.com -
Règle de transformation
e_set("website", op_add("https://", v("host"))) -
Résultat
host: aliyun.com website: https://aliyun.com
-
-
op_max
Renvoie la valeur maximale parmi plusieurs champs numériques ou expressions.
-
Syntaxe
op_max(value1, value2, ...) -
Paramètres
Nom du paramètre
Type de paramètre
Obligatoire
Description
value1
Tout type
Oui
Première valeur.
value2
La valeur doit correspondre au type de value1.
Oui
Deuxième valeur.
-
Réponse
Valeur maximale parmi les paramètres.
-
Exemples
-
Journal brut
price_orange: 2 priority_apple: 13 -
Règle de transformation
e_set("max_price", op_max(ct_int(v("price_orange")),ct_int(v("priority_apple")))) -
Résultat
price_orange: 2 priority_apple: 13 max_price: 13
-
op_min
Renvoie la valeur minimale parmi plusieurs champs numériques ou expressions.
-
Syntaxe
op_min(value1, value2, ...) -
Paramètres
Nom du paramètre
Type
Obligatoire
Description
value1
Tout type
Oui
Première valeur.
value2
Doit être du même type que value1
Oui
Deuxième valeur.
-
Réponse
Valeur minimale parmi les paramètres.
-
Exemples
-
Journal brut
price_orange: 2 price_apple: 13 -
Règle de transformation
e_set("op_min", op_min(ct_int(v("price_orange")),ct_int(v("price_apple")))) -
Résultat
price_orange: 2 price_apple: 13 op_min: 2
-