Referencia de lenguaje de reglas - Amazon Fraud Detector

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