# メールアドレスを検証して重複を表示する

重複するメールアドレスを検証し、検証結果を表示するコンポーネントと、重複するメールアドレスを表示するコンポーネントとして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"
   	}
   }
   ```