個別の式を編集する - Cloud - 7.3

Talend Studioユーザーガイド

Version
Cloud
7.3
Language
日本語
Product
Talend Big Data
Talend Big Data Platform
Talend Cloud
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Real-Time Big Data Platform
Module
Talend Studio
Content
ジョブデザインと開発
Last publication date
2024-02-13

このタスクについて

以下の例では、[Expression Builder] (式ビルダー)を使って2つの個別の式を編集する方法を示します。

この例では、2つの入力フローがtMapコンポーネントに接続されています。

  • DB入力からは、名と姓を空白文字で区切った人名のリストが受信されます。

  • ファイル入力からは、小文字の米国の州のリストが受信されます。

tMapで式ビルダーを使用して、まず、名と姓を区切っている空白文字を下線文字に置き換えます。次に、州を小文字から大文字に変更します。

手順

  1. tMapでは、適切な内部結合を設定して参照マッピングを設定します。
    tMapに関する詳細は、tMap操作および[Map editor] (マップエディター)インターフェイスをご覧ください。
  2. メイン(row1)入力からNamesカラムを出力エリアに、ルックアップ(row2)入力からStateカラムを同じ出力エリアに向けてドロップします。
  3. 最初の[Expression] (式)フィールド(row1.Name)をクリックし、次に式の横に表示される[...]ボタンをクリックします。

    [Expression Builder] (式ビルダー)ダイアログボックスが開きます。

  4. [Category] (カテゴリー)エリアから、実行する適切なアクションを選択します。In this example, select StringHandling and select the EREPLACEfunction.
  5. [Expression] (式)エリアで、テキストの部分にrow1.Nameを貼り付け、次のコードを取得します: StringHandling.EREPLACE(row1.Name," ","_")。この式で文字列の空白区切り文字を下線に置き換えます。
    特定の古い文字列内の特定の正規表現に一致するすべてのsubstringを特定の置換文字列に置き換え、新しい文字列を返すために、StringHandlingカテゴリーのCHANGEファンクションとEREPLACEファンクションが使用されています。これらのファンクションには次の3つのパラメーターがあります。
    • oldStr: 古い文字列。
    • newStr: 一致させる正規表現。
    • replacement: すべての一致について置き換える文字列。
  6. ここで[Test] (テスト)エリアの該当する[Value] (値)フィールドにプレースホルダー値のChuck Norrisを入力し、Test!をクリックして、出力が正しいかどうかをチェックします。この例では、Chuck_Norrisと正しく変更が実行されているはずです。
  7. OKをクリックして変更を確定した後、2番目のカラム[State] (州)に対して同じ操作を行います。
  8. tMap 出力でrow2.Stateの式を選択して[...]ボタンをクリックし、[Expression builder] (式ビルダー)を再度開きます。

    今回使用するStringHandlingファンクションはUPCASEになります。完全な式では、StringHandling.UPCASE(row2.State)と表示されます。

  9. もう一度、[Test] (テスト)エリアでプレースホルダー(indianaなど)を使い、式の構文が正しいことをチェックします。この例では、[Test!]の結果は、INDIANAと表示されるはずです。次にOK をクリックして変更を確定します。

    [tMap Expression] (tMap式)フィールドには、現在両方の式が表示されています。

タスクの結果

これらの変更はフロー処理で実行されます。この例の出力は次のように示されます。