Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Referencia de lenguaje de reglas
En la siguiente sección se describen las capacidades de expresión (es decir, redacción de reglas) de Amazon Fraud Detector.
Uso de variables
Puede usar cualquier variable definida en el tipo de evento evaluado como parte de la expresión. Use el signo de dólar para indicar una variable:
$example_variable < 100
Uso de listas
Puede usar cualquier lista que esté asociada a un tipo de variable y que esté llena de entradas como parte de la expresión de la regla. Use el signo de dólar para indicar el valor de una entrada en la lista:
$example_list_variable in @list_name
Operadores de comparación, membresía e identidad
Amazon Fraud Detector incluye los siguientes operadores de comparación: >, >=, <, <=,! =, ==, en, no en
A continuación se muestran algunos ejemplos:
Ejemplo: <
$variable < 100
Ejemplo: dentro, no dentro
$variable in [5, 10, 25, 100]
Ejemplo:! =
$variable != "US"
Ejemplo: ==
$variable == 1000
Tablas de operadores
Operador | Operador de Amazon Fraud Detector |
---|---|
Igual que | == |
No igual que | != |
Mayor que | > |
Menor que | < |
Superior o igual a | >= |
Menor o igual que | <= |
In | in |
Y | y |
O | o |
No | ! |
Matemáticas básicas
Puede usar operadores matemáticos básicos en la expresión (por ejemplo, +, -, *,/). Un caso de uso típico es cuando necesitas combinar variables durante la evaluación.
En la siguiente regla, sumamos la variable $variable_1
con $variable_2
y comprobamos si el total es inferior a 10.
$variable_1 + $variable_2 < 10
Datos básicos de una tabla matemática
Operador | Operador de Amazon Fraud Detector |
---|---|
Además | + |
Menos | - |
Multiply (Multiplicación) | * |
Divide (División) | / |
Módulo | % |
Expresión regular (regex)
Puedes usar expresiones regulares para buscar patrones específicos como parte de tu expresión. Esto resulta especialmente útil si desea hacer coincidir una cadena o un valor numérico específico con una de sus variables. Amazon Fraud Detector solo admite la coincidencia cuando se trabaja con expresiones regulares (por ejemplo, devuelve True/False en función de si la cadena proporcionada coincide con la expresión regular). El soporte de expresiones regulares de Amazon Fraud Detector se basa en .matches () en java (utilizando la biblioteca RE2 J Regular Expression). Hay varios sitios web útiles en Internet que son útiles para probar diferentes patrones de expresiones regulares.
En el primer ejemplo de abajo, primero transformamos la variable email
a minúsculas. Luego comprobamos si el patrón @gmail.com
está en la email
variable. Observe que el segundo punto se escapa para que podamos comprobar explícitamente la cadena.com
.
regex_match(".*@gmail\.com", lowercase($email))
En el segundo ejemplo, comprobamos si la variable phone_number
contiene el código de país +1
para determinar si el número de teléfono es de EE. UU. El símbolo más se escapa para que podamos comprobar la cadena de forma explícita+1
.
regex_match(".*\+1", $phone_number)
Tabla de expresiones regulares
Operador | Ejemplo de Amazon Fraud Detector |
---|---|
Haga coincidir cualquier cadena que comience con | regex_match («^mystring», $variable) |
Haga coincidir exactamente toda la cadena | regex_match («mystring», $variable) |
Coincide con cualquier carácter excepto con la nueva línea | regex_match (» . «, $variable) |
Haga coincidir cualquier número de caracteres excepto la nueva línea anterior a 'mystring' | regex_match (». *mi cadena», $variable) |
Escapa de los caracteres especiales | \ |
Comprobando los valores faltantes
A veces es beneficioso comprobar si falta el valor. En Amazon Fraud Detector, esto se representa con null. Para ello, utilice la siguiente sintaxis:
$variable != null
Del mismo modo, si desea comprobar si un valor no está presente, puede hacer lo siguiente:
$variable == null
Múltiples condiciones
Puede combinar varias expresiones utilizando and
yor
. Amazon Fraud Detector se detiene en una OR
expresión cuando se encuentra un único valor verdadero y se detiene en y AND
cuando se encuentra un solo valor falso.
En el ejemplo siguiente, estamos comprobando si hay dos condiciones utilizando la and
condición. En la primera sentencia, comprobamos si la variable 1 es menor que 100. En la segunda comprobamos si la variable 2 no es EE. UU.
Dado que la regla usa unand
, ambos deben ser VERDADEROS para que toda la condición dé como resultado VERDADERO.
$variable_1 < 100 and $variable_2 != "US"
Puede usar paréntesis para agrupar las operaciones booleanas, como se muestra a continuación:
$variable_1 < 100 and $variable_2 != "US" or ($variable_1 * 100.0 > $variable_3)
Otros tipos de expresiones
DateTime funciones
Función | Descripción | Ejemplo |
---|---|---|
getcurrentdatetime () | Muestra la hora actual de la ejecución de la regla en ISO86 formato 01 UTC. Puede usar getepochmilisegundos (getcurrentdatetime ()) para realizar operaciones adicionales | getcurrentdatetime () == «2023-03-28T 18:34:02 Z» |
está antes de DateTime ( DateTime1, 2) | Devuelve un booleano (verdadero/falso) si la persona que llama está antes que 2 DateTime DateTime | isbefore (getcurrentdatetime (), «2019-11-30T 01:01:01 Z») == «Falso» isbefore (getcurrentdatetime (), «2050-11-30T 01:05:01 Z») == «Verdadero» |
DateTimees después de DateTime (1, 2) | Devuelve un booleano (verdadero/falso) si la persona que llama es 1 después de 2 DateTime DateTime | isafter (getcurrentdatetime (), «2019-11-30T 01:01:01 Z») == «Verdadero» isafter (getcurrentdatetime (), «2050-11-30T 01:05:01 Z») == «Falso» |
DateTimegetepoch milisegundos () | Toma un DateTime y lo devuelve DateTime en milisegundos de época. Útil para realizar operaciones matemáticas en la fecha | getepochmilisegundos («2019-11-30T 01:01:01 Z») == 1575032461 |
Operadores de cadena
Operador | Ejemplo |
---|---|
Transforma una cadena a mayúscula | mayúscula ($variable) |
Transforma la cadena a minúsculas | minúscula ($variable) |
Otro
Operador | Comentario |
---|---|
Añadir un comentario |
# mi comentario |