CLEM の例

このセクションの例式は、CLEMで使用可能な正しい構文と式の種類を示しています。

簡単な表現

数式は次のように単純なもので、 After フィールドと Before フィールドの値に基づいて新しいフィールドを導出します。

(After - Before) / Before * 100.0

フィールドの値を参照する際には、フィールド名が引用符で囲まれていないことに注意してください。 同様に、次の式は、フィールド 「salary」 の各値の対数を単純に返します。

log(salary)

複合式

表現は長くなり、より複雑になることもあります。 以下の式は、2つのフィールド ($KX-Kohonen$KY-Kohonen )の値が指定された範囲内にある場合に true を返します。 フィールド名に特殊文字が含まれているため、ここではフィールド名がシングルクォートで囲まれていることに注目してください。

('$KX-Kohonen' >= -0.2635771036148072 and '$KX-Kohonen' <= 0.3146203637123107 
and '$KY-Kohonen' >= -0.18975617885589602 and 
'$KY-Kohonen' <= 0.17674794197082522) -> T

文字列関数など、いくつかの関数では、正しい構文を使用して複数のパラメータを入力する必要があります。 次の例では、 subscrs という関数を使用して、 生産品IDフィールドの最初の文字を返します。これにより、アイテムが有機、遺伝子組み換え、または従来品であるかが示されます。 式の結果は、 -> `result` によって記述されます。

subscrs(1,produce_ID) -> `c`

同様に、次の式は次のようになります

stripchar(`3`,`123`) -> `12`

文字は常に単一のバッククォートで囲む必要があることに注意してください。

式の中で関数を組み合わせる

CLEM式は、多くの場合、関数の組み合わせで構成されます。 以下の関数は、 subscrlowertoupper を組み合わせて、 produce_ID の先頭文字を返し、それを大文字に変換します。

lowertoupper(subscr(1,produce_ID)) -> `C`

この同じ表現は、略式で次のように書くことができます

lowertoupper(produce_ID(1)) -> `C`

もう一つのよく使われる機能の組み合わせは次の通りです

locchar_back(`n`, (length(web_page)), web_page)

この式は、 `n` という文字をフィールドweb_page の値内で、フィールド値の最後の文字から後ろ向きに読み取ります。 length 関数も含めることで、この式は、7文字未満の値には適用できない7などの固定数値ではなく、現在の値の長さを動的に計算します。

特殊関数

多数の特殊機能( @ 記号で始まる)が利用可能です。 一般的に使用される機能には以下のようなものがあります

@BLANK('referrer ID') -> T

特殊機能は、複数のフィールドに同時に空白をマークする一般的な方法として、組み合わせて使用されることがよくあります。

@BLANK(@FIELD)-> T

このCLEMドキュメント全体を通して、追加の例が説明されています。 詳しくは、 CLEM (レガシー) 言語リファレンス を参照してください。