Sintaxis avanzada del editor de expresiones syntax

A continuación se enumeran los conceptos básicos de sintaxis al usar el Editor de expresiones avanzadas.

Paréntesis y prioridad de expresión parentheses-and-expression-priority

Los paréntesis se pueden utilizar para hacer que una expresión compleja sea más legible. (<expression>) es el equivalente de <expression>. Los paréntesis también pueden utilizarse para definir el orden de evaluación y la asociatividad.

Las expresiones se evalúan de izquierda a derecha. Se debe aplicar la asociatividad en operadores aritméticos: las multiplicaciones y divisiones tienen prioridad sobre las sumas y las restas. Para imponer un orden específico, se deben añadir paréntesis para delimitar las operaciones. Por ejemplo:

Expresión
Evaluación
4 + 2 * 10
  • ‘*’ tiene prioridad sobre ‘+’: 2 * 10 se evalúa → 20
  • 4 + 20 → 24
(4 + 2) * 10
  • Los paréntesis cambian la prioridad: (4 + 2) se evalúa → 6
  • 10 → 60

Distinción de mayúsculas y minúsculas case-sensitivity

Estas son las diferentes reglas de distinción de mayúsculas y minúsculas:

  • Todos los operadores (y, o, etc.) debe escribirse en minúsculas. Por ejemplo, <expression1>y<expression2> son una expresión válida, mientras que la expresión <expression1>Y<expression2> no lo son.
  • Todos los nombres de función distinguen entre mayúsculas y minúsculas. Por ejemplo, inAudience() es válida, mientras que la función INAUDIENCE() no lo es.
  • Las referencias de campo y los valores constantes distinguen entre mayúsculas y minúsculas: no son elementos integrados del lenguaje (a diferencia de operadores y funciones), son creados por el usuario final.

Tipo de expresión devuelto returned-expression-type

Según el contexto de uso, el editor de expresiones puede devolver valores diferentes.

Uso del editor de expresiones avanzadas
Tipo de expresión devuelto esperado
Condición (condición de fuente de datos, condición de fecha)
Booleano
Temporizador personalizado
dateTimeOnly
Asignación de parámetros de acción
Cualquiera
Referencia de conocimientos de AI

Esta sección contiene conocimientos estructurados destinados a apoyar la interpretación, la recuperación y la respuesta a preguntas relacionadas con este tema.

Para una comprensión completa, esta información debe combinarse con la documentación de esta página. Ninguna de las fuentes pretende ser independiente; la página describe la función, mientras que esta sección proporciona contexto adicional que ayuda a desambiguar la terminología, la intención, la aplicabilidad y las restricciones.

  • TL;DR: Esta página describe las reglas de sintaxis principales del editor de expresiones avanzadas de Recorrido: la prioridad de los operadores entre paréntesis, la distinción entre mayúsculas y minúsculas para los operadores y las funciones y el tipo de valor devuelto esperado para cada contexto de editor.

Intenciones:

  • Controle el orden de evaluación de expresiones ajustando las subexpresiones entre paréntesis
  • Operadores de escritura (and, or, not) en minúsculas para evitar errores de sintaxis
  • Use nombres de funciones con mayúsculas y minúsculas correctamente (p. ej. inAudience() no INAUDIENCE())
  • Comprenda que las condiciones deben devolver un booleano, los temporizadores personalizados deben devolver dateTimeOnly y las asignaciones de parámetros de acción pueden devolver cualquier tipo

Glosario:

  • Prioridad de expresión: El orden en que se evalúan los operadores; las multiplicaciones y divisiones tienen prioridad sobre las adiciones y las sustracciones (específicas del producto)
  • Distinción entre mayúsculas y minúsculas: en el editor avanzado, los operadores deben estar en minúsculas, los nombres de función distinguen entre mayúsculas y minúsculas y las referencias de campo distinguen entre mayúsculas y minúsculas según el usuario (específico del producto)
  • dateTimeOnly: El tipo de valor devuelto requerido para las expresiones de temporizador personalizadas (actividad de espera); representa una fecha y hora sin una zona horaria (específica del producto)

Protecciones:

  • Operadores (and, or, not, etc.) debe escribirse en minúsculas; las variantes en mayúsculas no son válidas
  • Todos los nombres de función distinguen entre mayúsculas y minúsculas: inAudience() es válido pero INAUDIENCE() no lo es
  • La aritmética sigue la prioridad estándar: * y / se evalúan antes que + y -; use paréntesis para anular la prioridad
  • Las condiciones siempre devuelven un valor booleano; los temporizadores personalizados siempre devuelven dateTimeOnly

Terminología:

  • Nombre canónico: Sintaxis del editor de expresiones avanzadas — Acrónimo: none — variants: sintaxis de expresión, sintaxis de editor
  • Sinónimos: “prioridad de expresión” = “prioridad de operador”; “paréntesis” = “corchetes” (en contexto de expresión)
  • No confundir: distingue entre mayúsculas y minúsculas en el operador (los operadores deben estar en minúsculas) ≠ la distinción entre mayúsculas y minúsculas en las referencias de campo (los nombres de campo son creados por el usuario y distinguen entre mayúsculas y minúsculas cuando se escriben).

PREGUNTAS MÁS FRECUENTES:

  • Q: ¿Se evalúa 4 + 2 * 10 en 60 o 24? — Se evalúa como 24 porque * tiene prioridad sobre +; use (4 + 2) * 10 para obtener 60.
  • Q: ¿Puedo escribir AND en mayúsculas en una expresión? — No; todos los operadores deben estar en minúsculas (and, or, not).
  • Q: ¿Los nombres de función distinguen entre mayúsculas y minúsculas? — Sí; inAudience() es válido pero INAUDIENCE() no.
  • Q: ¿Qué tipo debe devolver una expresión de condición? — Un booleano.
  • Q: ¿Qué tipo de valor devuelto se requiere para una expresión de temporizador de actividad de espera personalizada?dateTimeOnly.
recommendation-more-help
journey-optimizer-help