Valider les adresses e-mail et afficher les doublons

Guide de référence des scripts de Jobs Talend

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend Real-Time Big Data Platform
Talend Data Integration
Talend Data Fabric
Talend Big Data
Talend Big Data Platform
Talend ESB
Talend Data Services Platform
Talend Data Management Platform
Talend MDM Platform
task
Création et développement > Création de Jobs
EnrichPlatform
Talend CommandLine
Studio Talend

Suivez la procédure ci-dessous pour ajouter et configurer deux composants tJavaRow, l'un pour valider les adresses e-mail en doublon et afficher les résultats de la validation et l'autre pour afficher les adresses e-mail en doublon.

Procédure

  1. À côté des paramètres du composant tUniqRow, ajoutez un nouveau composant, un tJavaRow.
    addComponent {
    	setComponentDefinition {
    		TYPE: "tJavaRow",
    		NAME: "tJavaRow_1",
    		POSITION: 640, 96
    	}
    
    }
  2. À côté de la fonction setComponentDefinition {} du tJavaRow, définissez les propriétés du composants à l'aide de la fonction setSettings {}.

    Dans cet exemple, ce composant tJavaRow, libellé validate, sera utilisé pour exécuter un morceau de code Java afin de vérifier que la chaîne de caractères de chaque ligne entrante appartient à une adresse e-mail, puis pour afficher les résultats de la validation.

    	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. Ajoutez et configurez le second tJavaRow, utilisé pour afficher les adresses e-mail en doublon.
    addComponent {
    	setComponentDefinition {
    		TYPE: "tJavaRow",
    		NAME: "tJavaRow_2",
    		POSITION: 640, 288
    	}
    	setSettings {
    		CODE : "System.out.println(\"duplicate: \" + input_row.email);",
    		LABEL : "duplicates"
    	}
    }