翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
ルール言語リファレンス
次のセクションでは、Amazon Fraud Detector の式 (ルールの書き込み) 機能の概要を説明します。
変数の使用
評価されたイベントタイプで定義されている変数は、式の一部として使用できます。変数を示すには、ドル記号を使用します。
$example_variable < 100
リストを使う
変数型に関連付けられていて、エントリが入力されているリストならどれでもルール式の一部として使用できます。リストエントリの値を示すにはドル記号を使用してください。
$example_list_variable in @list_name
比較、メンバーシップ、およびアイデンティティ演算子
Amazon Fraud Detector には、>、>=、<、<=、!=、==、in、not in の比較演算子が含まれています。
次に例を示します。
例: <
$variable < 100
例: in、not in
$variable in [5, 10, 25, 100]
例: !=
$variable != "US"
例: ==
$variable == 1000
演算子テーブル
演算子 | Amazon Fraud Detector 演算子 |
---|---|
等しい | == |
等しくない | != |
超 | > |
未満 | < |
以下と同等かそれ以上 | >= |
以下 | <= |
中 | 中 |
および | and |
または | または |
以外 | ! |
基本的な数学
式には基本的な数学演算子 (+、-、*、/など) を使用できます。代表的なユースケースには、評価中に変数を組み合わせる必要があるときです。
以下のルールでは、変数 $variable_1
に $variable_2
を追加し、合計が 10 未満かどうかをチェックしています。
$variable_1 + $variable_2 < 10
基本的な数学テーブルデータ
演算子 | Amazon Fraud Detector 演算子 |
---|---|
+ (足し算) | + |
- (引き算) | - |
[Multiply] (乗算) | * |
/ (除算) | / |
モジュロ | % |
正規表現 (regex)
正規表現を使用して、式の一部として特定のパターンを検索できます。これは、変数の 1 つに特定の文字列または数値を一致させる場合に特に便利です。Amazon Fraud Detector は、正規表現を使用する場合にのみ一致をサポートします (例えば、指定された文字列が正規表現と一致するかどうかによって True/False を返します)。Amazon Fraud Detector の正規表現のサポートは、Javaの.matches() に基づいています (RE2J 正規表現ライブラリを使用)。インターネットには、さまざまな正規表現パターンのテストに役立つウェブサイトがいくつかあります。
以下の最初の例では、まず変数 email
を小文字に変換します。次に、パターン @gmail.com
が email
変数内にあるかどうかをチェックします。文字列 .com
を明示的にチェックできるように、2 番目のピリオドがエスケープされていることに注目してください。
regex_match(".*@gmail\.com", lowercase($email))
2 番目の例では、変数 phone_number
に国コード +1
が含まれているかどうかをチェックして、電話番号が米国からのものかどうかを判断します。文字列 +1
を明示的にチェックできるように、プラス記号がエスケープされています。
regex_match(".*\+1", $phone_number)
正規表現テーブル
演算子 | Amazon Fraud Detector の例 |
---|---|
以下で始まる任意の文字列に一致 | regex_match("^mystring", $variable) |
文字列全体を正確に一致 | regex_match("mystring", $variable) |
改行以外の任意の文字に一致 | regex_match(".", $variable) |
改行前の 'mystring' 以外の任意の数の文字に一致 | regex_match(".*mystring", $variable) |
エスケープ特殊文字 | \ |
欠落している値のチェック
場合によっては、値が欠落しているかどうかをチェックすることが有益です。Amazon 詐欺検出器では、これは NULL で表されます。これを行うには、次の構文を使用します。
$variable != null
同様に、値が存在しないかどうかをチェックする場合は、以下を行えます。
$variable == null
複数の条件
and
と or
を使用して、複数の式を組み合わせることができます。Amazon Fraud Detector は、真の値が 1 つ見つかったときに OR
式で停止し、偽の値が 1 つ見つかったときに AND
で停止します。
次の例では、and
条件を使用して 2 つの条件をチェックしています。最初のステートメントでは、変数 1 が 100 未満かどうかをチェックしています。2 つ目のステートメントでは、変数 2 が米国ではないかどうかをチェックしています。
ルールは and
を使用していることを考えると、条件全体が TRUE と評価されるためには、両方とも TRUE でなければなりません。
$variable_1 < 100 and $variable_2 != "US"
括弧を使用して、次のようにブール演算をグループ化することができます。
$variable_1 < 100 and $variable_2 != "US" or ($variable_1 * 100.0 > $variable_3)
その他の式タイプ
DateTime機能
関数 | 説明 | 例 |
---|---|---|
現在の日付/時刻を取得 () | ルール実行の現在の時刻を ISO8601 UTC 形式で表示します。getepoch ミリ秒 (getcurrentdatetime ()) を使うと追加の操作を実行することができます | getcurrentdatetime () ==「2023-03-28T 18:34:02 Z」 |
以前です (DateTime1, DateTime 2) | DateTime呼び出し元の 1 が 2 より前の場合は、ブール値 (True/False) を返します DateTime | 以前です (getcurrentdatetime (),「2019-11-30T 01:01:01 Z」) ==「False」 以前です (getcurrentdatetime (),「2050-11-30T 01:05:01 Z」) ==「True」 |
シフター (DateTime1, DateTime 2) | DateTime呼び出し元の 1 が 2 の後の場合は、ブール値 (True/False) を返します DateTime | isafter (現在の日付時刻を取得 (),「2019-11-30T 01:01:01 Z」) ==「True」 isafter (getcurrentdatetime (),「2050-11-30T 01:05:01 Z」) ==「False」 |
GET エポックミリ秒 () DateTime | a を受け取りDateTime、DateTimeそれをエポックミリ秒単位で返します。日付に数学演算を実行するのに便利です | getepochミリ秒 (「2019-11-30T 01:01:01 Z」) = 1575032461 |
文字列演算子
演算子 | 例 |
---|---|
文字列を大文字に変換 | uppercase($variable) |
文字列を小文字に変換 | lowercase($variable) |
その他
演算子 | コメント |
---|---|
コメントを追加 |
# 自分のコメント |