電子メールアドレスを検証して重複を表示する - 7.0

カスタムコードコンポーネントを使って電子メールアドレスを検証するジョブスクリプトを作成する

author
Talend Documentation Team
EnrichVersion
7.0
EnrichProdName
Talend Big Data
Talend Big Data Platform
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
task
ジョブデザインと開発 > サードパーティーシステム > カスタムコードコンポーネント > Javaカスタムコードコンポーネント
ジョブデザインと開発 > サードパーティーシステム > ファイルコンポーネント > 列区切り文字付き
ジョブデザインと開発 > サードパーティーシステム > プロセス制御コンポーネント
ジョブデザインと開発 > サードパーティーシステム > ロギングコンポーネント
ジョブデザインと開発 > サードパーティーシステム > 変換処理コンポーネント
データガバナンス > サードパーティーシステム > カスタムコードコンポーネント > Javaカスタムコードコンポーネント
データガバナンス > サードパーティーシステム > ファイルコンポーネント > 列区切り文字付き
データガバナンス > サードパーティーシステム > プロセス制御コンポーネント
データガバナンス > サードパーティーシステム > ロギングコンポーネント
データガバナンス > サードパーティーシステム > 変換処理コンポーネント
データクオリティとプレパレーション > サードパーティーシステム > カスタムコードコンポーネント > Javaカスタムコードコンポーネント
データクオリティとプレパレーション > サードパーティーシステム > ファイルコンポーネント > 列区切り文字付き
データクオリティとプレパレーション > サードパーティーシステム > プロセス制御コンポーネント
データクオリティとプレパレーション > サードパーティーシステム > ロギングコンポーネント
データクオリティとプレパレーション > サードパーティーシステム > 変換処理コンポーネント
EnrichPlatform
Talend CommandLine
Talend Studio

重複する電子メールアドレスを検証し、検証結果を表示するコンポーネントと、重複する電子メールアドレスを表示するコンポーネントとして2つのtJavaRowコンポーネントを追加するには、以下の手順に従います。

手順

  1. tUniqRowコンポーネント設定の次に、新しいコンポーネントtJavaRowを追加します。
    addComponent {
    	setComponentDefinition {
    		TYPE: "tJavaRow",
    		NAME: "tJavaRow_1",
    		POSITION: 640, 96
    	}
    
    }
  2. このtJavaRowコンポーネントのsetComponentDefinition {}関数の次に、setSettings {}関数を使ってコンポーネントのプロパティを定義します。

    この例では、このtJavaRowコンポーネントのラベルはvalidateです。そして、このコンポーネントは、各受信行の文字列が電子メールアドレス関連であるかどうか検証し、その検証結果を表示するJavaコードを実行します。

    	setSettings {
    		CODE : "String email = input_row.email;
    
    Perl5Matcher matcher = new Perl5Matcher();
    Perl5Compiler compiler = new Perl5Compiler();
    Pattern pattern = compiler.compile(\"^[\\\\w_.-]+@[\\\\w_.-]+\\\\.[\\\\w]+$\");
    
    if (!matcher.matches(email, pattern)) {
    	System.out.println(\"invalid : \" + email);
    	}
    	else
    	System.out.println(\"valid   : \" + email);",
    		LABEL : "validate"
    	}
    
  3. 次に、重複する電子メールアドレスを表示するのに使用される2つ目のtJavaRowを追加します。
    addComponent {
    	setComponentDefinition {
    		TYPE: "tJavaRow",
    		NAME: "tJavaRow_2",
    		POSITION: 640, 288
    	}
    	setSettings {
    		CODE : "System.out.println(\"duplicate: \" + input_row.email);",
    		LABEL : "duplicates"
    	}
    }