高度な式エディターの構文 syntax

高度な式エディターを使用する際の構文の基本事項を以下に示します。

括弧と式の優先度 parentheses-and-expression-priority

括弧を使用すると、複雑な式が読みやすくなります。 (<expression>)<expression>​と同等です。 括弧を使用して、評価順序と結合規則を定義することもできます。

式は左から右に評価されます。 演算子の結合規則を適用する必要があります。乗算と除算は、加算と減算よりも優先されます。 特定の順序を強制するには、括弧を追加して演算を区切る必要があります。 次に例を示します。

評価結果
4 + 2 * 10
  • 「*」は「+」よりも優先されます:2 * 10 の評価結果は → 20
  • 4 + 20 → 24
(4 + 2) * 10
  • 括弧によって優先度が変わります:(4 + 2) の評価結果は → 6
  • 6 * 10 → 60

大文字と小文字の区別 case-sensitivity

大文字と小文字の区別に関する様々なルールを次に示します。

  • すべての演算子(および、またはなど) 小文字にする必要があります。 例: <expression1>and<expression2> は有効な式であるのに対して、<expression1>AND<expression2> は有効な式ではありません。
  • すべての関数名では大文字と小文字が区別されます。 例:inAudience() は有効なのに対して、INAUDIENCE() 関数は有効ではありません。
  • フィールド参照と定数値は、大文字と小文字が区別されます。(演算子や関数とは異なり)これらは言語のビルトインの要素ではなく、エンドユーザーが作成します。

式の戻り値のタイプ returned-expression-type

使用コンテキストに応じて、式エディターは異なる値を返す可能性があります。

高度な式エディターでの使用法
式の戻り値として想定されるタイプ
条件(データソース条件、日付条件)
ブール値
カスタムタイマー
dateTimeOnly
アクションパラメーターのマッピング
任意
AI ナレッジリファレンス

このセクションには、このトピックに関連する解釈、検索、質問への回答をサポートすることを目的とした構造化された知識が含まれています。

理解を深めるには、この情報をこのページのドキュメントと組み合わせる必要があります。 どちらのソースも単独で使用することを意図していません。このページでは、機能について説明しますが、この節では、用語、意図、適用可能性、および制約の曖昧さを解消するのに役立つ追加のコンテキストを提供します。

  • TL;DR:​このページでは、ジャーニーの高度な式エディターの主要な構文ルール(括弧を含む演算子の優先順位、演算子と関数の大文字と小文字の区別、各エディターコンテキストの想定される戻り値の種類)について説明します。

インテント:

  • 括弧内にサブ式をラップすることで、式の評価順序を制御します
  • 構文エラーを避けるために、演算子(andornot)を小文字で書き込みます
  • 正しく大文字と小文字が区別された関数名を使用する(例:inAudience()ではなくINAUDIENCE()
  • 条件はブール値を返す必要があり、カスタムタイマーはdateTimeOnlyを返す必要があり、アクションパラメーターマッピングは任意の型を返すことができることを理解してください

用語集:

  • 式の優先度:演算子が評価される順序。乗算と除算は、加算と減算よりも優先されます​(製品固有)
  • 大文字と小文字の区別:高度なエディターでは、演算子は小文字にする必要があり、関数名は大文字と小文字を区別し、フィールド参照はユーザー​ (製品固有) ​によって作成されたとおりに大文字と小文字を区別します
  • dateTimeOnly: カスタムタイマー(待機アクティビティ)式に必要な戻り値のタイプ。タイムゾーン (製品固有)​のない日時を表します

ガードレール:

  • 演算子(andornotなど) 小文字で書く必要があります。大文字のバリエーションは無効です
  • すべての関数名では大文字と小文字が区別されます – inAudience()は有効ですが、INAUDIENCE()は無効です
  • 算術は標準の優先順位に従います:*/+-の前に評価されます。括弧を使用して上書きします
  • 条件は常にブール値を返します。カスタムタイマーは常にdateTimeOnlyを返します

用語:

  • 正規表現の名前:高度な式エディター構文 – 略語:なし – バリアント:式の構文、エディターの構文
  • 同義語:“expression priority” = “operator precedence”; “括弧” = “brackets” (式コンテキスト内)
  • 大文字と小文字を区別しない:演算子の大文字と小文字の区別(演算子は小文字にする必要があります)≠フィールド参照の大文字と小文字の区別(フィールド名はユーザー作成で、書き込み時に大文字と小文字を区別します)

FAQ:

  • Q: 4 + 2 * 10は60または24に評価されますか?*+よりも優先されるので、24と評価されます。(4 + 2) * 10を使用して60を取得します。
  • Q: ANDを式に大文字で書くことはできますか? – いいえ。すべての演算子は小文字(andornot)である必要があります。
  • Q:関数名では大文字と小文字が区別されますか?inAudience()は有効ですが、INAUDIENCE()は無効です。
  • Q:条件式が返すタイプは何ですか? — ブール値。
  • Q: カスタムの待機アクティビティタイマー式に必要な戻り値のタイプは何ですか?dateTimeOnly
recommendation-more-help
journey-optimizer-help