テスト演算の条件

Compare、Not Empty、Range、Regular Expression、String Match など、テスト演算の条件について取り上げます。

Compare

Compare は、文字列値または数値を比較する条件です。文字列値を比較する場合、大文字と小文字を区別するかどうかを指定できます。

Compare 条件のパラメーターについて次の表で説明します。

パラメーター 説明 デフォルト
Case Sensitive true または false。Type が LEXICAL の場合にのみ使用されます。false に設定した場合、大文字と小文字は区別されません。 true
コメント (オプション)条件についてのメモ。 コメント
Input A 比較対象となる 2 つの値の 1 つ目。この値は、条件の左辺オペランドを表します。
Input B 比較対象となる 2 つの値の 2 つ目。この値は、条件の右辺オペランドを表します。
操作

比較演算。利用可能な演算(とその意味)を次に示します。

  • = または ==(Input A と Input B が等しい)
  • <> or !=(Input A は Input B と等しくない)
  • <(Input A は Input B より小さい)
  • <=(Input A は Input B 以下)
  • >(Input A は Input B より大きい)
  • >=(Input A は Input B 以上)

=
タイプ 実行する比較のタイプ。LEXICALNUMERICDATETIME のいずれかを選択できます。タイプの説明については、テスト演算のテストタイプを参照してください。 LEXICAL

この例では、Compare条件を使用してLog Entry Conditionを定義しています。 Data Workbench サーバーは、各イベントデータレコードを読み取る際、数値である x-age と 55 を比較します。特定のログエントリについて、x-age が 55 以下である場合、そのログエントリはデータセットの構築プロセスに含められます。

Not Empty

Not Empty は、フィールドに値が格納されているかどうかをチェックする条件です。Input フィールドの値が空以外であれば、ログエントリがこの条件を満たしていると見なされます。

Not Empty 条件のパラメーターについて次の表で説明します。

パラメーター 説明 デフォルト
コメント (オプション)条件についてのメモ。 コメント
Input 特定のログエントリに関して、値が格納されているかどうかのチェック対象となるフィールドの名前。

この例では、x-some-field を入力として受け取り、そのフィールドに値が格納されている(空でない)かどうかをテストします。フィールドに値が格納されていれば、条件を満たしたことになります。

範囲

Range は、入力フィールドを受け取り、その値が、指定された下限値(Min)パラメーターと上限値(Max)パラメーターの範囲(両端の値を含む)に含まれているかどうかを判断する条件です。

Range 条件のパラメーターについて次の表で説明します。

パラメーター 説明 デフォルト
大文字と小文字の区別 true または false。TypeLEXICAL の場合にのみ使用されます。false に設定した場合、大文字と小文字は区別されません。 true
コメント (オプション)条件についてのメモ。 コメント
入力 ログエントリからの入力として使用するフィールドの名前。
Min

範囲の下限。

このパラメーターの値は、リテラル値または文字列(つまりフィールド名以外)であることが必要です。このフィールドの日付を使用する場合、タイムゾーンを指定する必要があります。サポートされているタイムゾーンの略称一覧については、 タイムゾーンのコード.

Max

範囲の上限。

注意:このパラメーターの値は、リテラル値または文字列(つまりフィールド名以外)であることが必要です。このフィールドの日付を使用する場合、タイムゾーンを指定する必要があります。サポートされているタイムゾーンの略称一覧については、 タイムゾーンのコード.

タイプ 実行する比較のタイプ。LEXICALNUMERICDATETIME のいずれかを選択できます。タイプの説明については、テスト演算のテストタイプを参照してください。

この例では、Range条件を使用してLog Entry Conditionを定義しています。 Data Workbenchサーバーは、各event dataレコードを読み取る際に、x-ageと55の数値を比較します。 特定のログエントリについて、x-age が 55 以上である場合、そのログエントリはデータセットの構築プロセスに含められます。この例で実行される機能は、Compare 条件で取り上げた例と同じです。Compare を参照してください。

メモ

MinまたはMaxパラメーターが空白の場合、使用可能な最小または最大の整数値が代わりに使用されます。 最小値はゼロ(0)で、最大値は無限です。

正規表現

Regular Expression条件テストでは、正規表現のパターンマッチング(正規表現を参照)を使用して、指定した入力フィールドの値に、 Matchesパラメーターで指定したパターンの1つに一致する文字列が含まれているかどうかを判定します。

入力データが文字列ベクトルである場合、ベクトル内の 1 つ目の値だけがテストに使用されます。Regular Expression条件は、完全な文字列の比較を実行します。 文字列を部分的に識別する必要がある場合は、文字列の前後に「.*」を付加する必要があります。

Regular Expression 条件のパラメーターについて次の表で説明します。

パラメーター 説明 デフォルト
大文字と小文字の区別 true または false。false に設定した場合、大文字と小文字は区別されません。 true
コメント (オプション)条件についてのメモ。 コメント
入力 ログエントリからの入力として使用するフィールドの名前。
Matches

入力フィールドの値と突き合わせる正規表現パターン(複数可)。

正規表現パターンを追加するには

  1. Matches を右クリックします。
  2. 新規追加Regular Expression をクリックします。
  3. 目的の正規表現をテキストボックスに入力します。

以下に示したのは、Web サイトトラフィックから収集したデータのフィールドに、Regular Expression 条件を適用して、一致しているかどうかを判断する例です。この条件は、cs(referrer-query)フィールドに正規表現campaign=C[1-9][0-9]{4}と一致する文字列が含まれている場合にのみtrueを返します。 この正規表現は、campaign=C12345を含む任意の文字列と一致します。 ただし、Cの後の最初の文字が1-9の範囲に含まれていないので、このパターンは文字列campaign=C0123&と一致しません。

String Match

String Match条件は、文字列の等価性をテストします。 指定されたフィールドを入力として受け取り、各ログエントリ内のフィールドの値と、この条件演算の Matches パラメーターに指定された文字列とを比較します。Matches に指定されたいずれかの文字列が、指定された入力フィールドの値と同じ(大文字と小文字が区別されます)である場合、true を返します。StringCondition に一致文字列が存在しない場合は、false を返します。入力データが文字列ベクトルである場合、ベクトル内の 1 つ目の値(文字列)だけがテストに使用されます。

パラメーター 説明 デフォルト
大文字と小文字の区別 true または false。false に設定した場合、大文字と小文字は区別されません。 true
コメント (オプション)条件についてのメモ。 コメント
入力 ログエントリからの入力として使用するフィールドの名前。
一致

入力フィールドの値と突き合わせる文字列(複数可)。

文字列を追加するには

  1. Matches を右クリックします。
  2. 新規追加String をクリックします。
  3. 目的の文字列をテキストボックスに入力します。

以下に示したのは、Web サイトトラフィックから収集したデータに String Match 条件を適用する例です。この条件は、入力フィールド(cs-uri-stem)がMatchesパラメータで指定された2つの文字列のいずれかと一致するかどうかをテストし、フィールドcs-uri-stemが正確な文字列/navigation/footer.aspか正確な文字列/navigation/header.aspのどちらかである場合に成功します。

このページ